首页 > 代码库 > linux常用命令(笔记)
linux常用命令(笔记)
1. 查看目录下有什么文件信息
//list查看当前目录下有什么文件> ls//list -list 通过详细内容形式查看目录下的文件内容> ls -l 或 ll//查看指定目录下文件名字信息> ls 目录//以详细列表形式查看指定目录下文件名字信息> ls -l 目录//list all 查看全部文件,包括隐藏文件> ls -a//list list all 以详细列表形式查看全部文件,包括隐藏文件> ls -al//查看目录下文件名字的索引号码> ls -i
2. 目录切换
//切换目录> cd 目录名字//向上级目录切换> cd ..//快速切换回自己的家目录> cd ~
3. 查看当前操作位置
> pwd
4. 查看操作者信息(是谁在操作系统)
> whoami
5. 不同用户间的切换
//切换为root用户> su - //效果同上> su - root//向普通用户切换> su 普通用户名称//当前用户退回到之前用户> exit su多次使用,用户会"累加",建议"su"和"exit"匹配使用test--->root--->test--->root--->test
6. 图形模式与命令模式进行切换
//图形向命令模式切换> init 3//命令向图形模式切换> init 5
7. 查看指令对应的可以执行程序文件位置
> which 指令
8. 目录操作
1)创建目录
//创建目录> mkdir newdir//递归方式创建多级目录> mkdir -p newdir/newdir/newdir //newdir新目录多于1个层次(2/3/4等)就设置-p参数,如果就一个新的目录则无需-p参数> mkdir dir/newdir> mkdir dir/dir/newdir> mkdir -p dir/newdir/newdir
2) 移动(改名字)目录 (目录/文件 都可以操作)
//dir1移动到dir2目录下,并给改名字为"原名"> mv dir1 dir2 //dir1移动到dir2目录下,并给改名字为newdir> mv dir1 dir2/newdir //dir2移动到dir4目录下,并给改名字为"原名"> mv dir1/dir2 dir3/dir4 //dir2移动到dir4目录下,并给改名字为 newdir> mv dir1/dir2 dir3/dir4/newdir //dir2移动到当前目录下,并给改名字为"原名"> mv dir1/dir2 ./ //dir2移动到当前目录下,并给改名字为newdir> mv dir1/dir2 ./newdir
3) 复制(改名字)目录 (目录/文件 都可以操作)
//复制普通文件//file1被复制到dir1目录下一份,并给改名字为"原"> cp file1 dir1 //file1被复制到dir1目录下一份,并给改名字为newfile> cp file1 dir1/newfile //复制目录 -r参数要求//递归方式拷贝目录//dir1被复制到dir2目录下一份,并给改名字为"原名"> cp -r dir1 dir2 //dir1被复制到dir2目录下一份,并给改名字为newdir> cp -r dir1 dir2/newdir //dir3被复制到dir5目录下一份,并给改名字为"原名"> cp -r dir1/dir2/dir3 dir4/dir5
4) 删除 remove
//普通文件删除> rm filename //删除目录[无视层次]需要-r参数> rm -r dir //递归强制删除文件//避免删除隐藏文件的提示> rm -rf 文件 //递归强制方式删除系统里边的全部内容> rm -rf /
9. 文件操作
1) 查看文件内容
//在终端显示文件全部内容> cat filename //通过"敲回车"方式从第一行逐行查看文件内容//不支持回看//q键 退出查看> more filename //"上下左右"键方式查看文件各个部分内容//支持回看,q键退出> less filename //查看文件"前n行"内容> head -n filename //查看文件“末尾n行”内容> tail -n filename //计算文件行数> wc filename
2) 创建文件
> touch filename > touch dir/filename
3) 追加内容(文件不存在会“自动”创建)
//给文件"覆盖写"方式追加内容> echo 内容 > filename //给文件纯追加内容> echo 内容 >> filename
10. 用户操作
user配置文件/etc/passwd
1) 创建 add
//创建用户会同时创建同名组> useradd username //创建用户的同时设置组别> useradd -g 组编号 username //创建用户同时,指定组别、用户编号、家目录> useradd -g 组编号 -u 用户编号 -d 家目录 username
2) 修改 modify
//修改组别是常见操作> usermod -g gid username //修改组别、用户编号、家目录、名字> usermod -g gid -u uid -d 家目录 -l newname username
注意:家目录修改后需要手动创建,不同于创建用户家目录设置
创建用户时设置家目录,该目录会自动创建
修改用户家目录时,该目录不会自动创建(需要手动创建)
3) 删除 delete
//删除用户(删除passwd文件对应信息),此时其家目录需要手动删除># userdel username //删除用户的同时也删除其"家目录"># userdel -r username
11. 组别操作
group配置文件/etc/group
1) 创建 add
> groupadd groupname
2) 修改 modify
> groupmod -g gid -n newname groupname
3) 删除 delete
//注意:只有空组(内部没有用户信息)才允许删除> groupdel 组名
12. vi编辑器使用
1) 命令模式-->编辑模式切换(插入/Insert)
a "光标" 向后移动一位i "光标" 和 "内容" 没有变化o "新"起一个空白行s "删除"光标所在字符
2) 尾行模式作用
:q quit退出编辑器:wq write quit保存并退出:w write保存:q! 强制退出(不要保存):w! 强制写保存:wq! 强制保存退出//给编辑器设置行号:set number 或 set nu //取消行号设置:set nonumber 或 set nonu:数字 光标跳转到数字所在行//内容查找,小写n(next)下一个,大写N(next)上一个:/内容/ 或 /内容 //内容替换 "cont1"被替换为"cont2"//把光标所在行的"第一个"cont1替换为cont2:s/cont1/cont2/ //把光标"所在行"的全部cont1替换为cont2:s/cont1/cont2/g //把"整个文档"中的全部cont1替换为cont2:%s/cont1/cont2/g
3) 命令模式操作
(1) 光标移动
a. 字符级 上(k) 下(j) 左(h) 右(l) 键b. 单词级 w word下个单词首字母 e end下(本)个单词尾字母 b before上(本)个单词首字母c. 行级 $ 行尾 0 行首d. 段落级(两部分内容中间有空行,彼此成为段落) { 上(本)个段落首部 } 下(本)个段落尾部e. 屏幕级(不给翻屏) H 屏幕首部 L 屏幕尾部f. 文档级 G 文档尾行 1G 文档第一行 nG 文档第n行
(2) 内容删除
dd 删除光标所在行n+dd 包括当前行在内向下删除n行内容x 字符级删除,删除光标所在字符cw 光标所在字符删除至单词结尾(是删除单词的便捷方式) 同时会进入编辑模式
(3) 内容复制
yy 复制光标所在行n+yy 包括当前行在内向下复制n行内容p 对复制(删除)好的内容进行粘贴操作
(4) 便捷操作
u undo撤销,从文件打开后的所有操作都可以撤销r 对单词字符进行替换. 重复执行"最近"的一条指令J 合并上下两行
13. 权限设置
1) "字母相对方式"设置权限
权限: r读 w写 x执行用户: u主人 g同组 o其他组chmod u+/-rwx, g+/-rwx, o+/-rwx 文件不同用户通过",逗号"分隔在同一个用户里边,+/-只能用"一个""rwx"在同一个用户里边可以设置一个或多个"ugo" 每次权限操作可以设置一个或多个用户//主人增加读、写> chmod u+rw filename //同组删除读、执行> chmod g-rx filename //主人删除写,同组增加执行> chmod u-w,g+x filename //其他组用户"增加写、删除执行"> chmod o+w,o-x filename
2) "数字绝对方式" 设置权限
读:4 写:2 执行:1权限类型:0: 没有权限1: 执行2: 写3: 写、执行4: 读5: 读、执行6: 读、写7: 读、写、执行//ABC分别代表主人、同组、其他组用户权限> chmod ABC filename //主人读、写、执行,同组读、写,其他读> chmod 764 filename //满贯权限> chmod 777 filename //所有用户没有任何权限> chmod 000 filename
字母和数字方式取舍:
权限修改的比较"少",就使用字母方式
权限修改的比较"多",就使用数字方式
14. 在文件中查找指定内容
grep 内容 (绝对/相对路径)目标文件
//在passwd文件中查找sbin字样,会把sbin所在行的内容都输出> grep sbin /etc/passwd
15. 查看文件占据磁盘空间大小
du -h 文件/目录
//以k M的形式查看文件占据磁盘空间大小> du -h 文件名称
16. 文件查找
find 现值查找目录 选项 选项值 选项 选项值....
具体选项:
(1) name 根据文件名字查找指定的文件
find 目录 -name 完整文件名称//"递归遍历"系统全部目录查找名字等于passwd的文件> find / -name passwd[完整名称] //递归遍历/etc及内部所有目录查找名字等于passwd的文件> find /etc -name passwd[完整名称] //模糊查找文件名字以an开始的>find 目录 -name "an*"[部分名称]
(2) 对查找的目录层次进行限制
-maxdepth 限制查找的最"深"层次
-mindepth 限制查找的最"浅"层次
//在3到4个层次的目录里边定位passwd文件> find / -name passwd -mindepth 3 -maxdepth 4
(3) 根据文件大小进行查找
size 单位
//在当前目录下查找大小[等于]50个字节的文件> find ./ -size 50c
单位:
数量 单位 实际大小
100 -------> 512字节 【100*512字节】
50c -------> 字节 【50字节】
50k -------> 千字节 【50*1024字节】
50M ------> 兆字节 【50*1024*1024字节】
//在当前目录下查找大小[大于]50个字节的文件> find ./ -size +50c //在当前目录下查找大小[小于]50个字节的文件> find ./ -size -50c
17. 开关机指令
重启
> reboot
关机
> poweroff
linux常用命令(笔记)