2017-10-08我的Linux命令小记

您现在的位置是: 首页 > Linux技术 > 我的Linux命令小记

414次阅读

最近在学Linux系统命令,为方便自己也方便他人,简单地记录一下,方便以后查阅。本文不是什么完整列表,而是简要地列出了需要时派得上用场的命令

一、查看目录下有什么文件信息

> ls              //list查看当前目录下有什么文件\r> ls  -l 或ll     //list  -list 通过详细内容形式查看目录下的文件内容\r> ls  目录        //查看指定目录下文件名字信息\r> ls  -l 目录     //以详细列表形式查看指定目录下文件名字信息\r> ls  -a          //list  all 查看全部文件,包括隐藏文件\r> ls  -al         //list  list all 以详细列表形式查看全部文件,包括隐藏文件\r> ls  -i          //查看目录下文件名字的索引号码


二、目录切换

> cd  目录名字\r> cd  ..       //向上级目录切换\r> cd  ~        //快速切换回自己的家目录


三、查看操作者信息(是谁在操作系统)

> whoami


四、不同用户间的切换

> su -              //切换为root用户\r> su -  root        //效果同上\r> su  普通用户名称  //向普通用户切换\r> exit        //当前用户退回到之前用户

su多次使用,用户会“累加”,建议“su” 和 “exit”匹配使用

 jinnan--->root--->jinnan--->root--->jinnan


五、图形模式与命令模式进行切换

> init 3     //图形 向 命令模式切换\r> init 5     //命令 向 图形模式切换


六、查看指令对应的可以执行程序文件位置

> which  指令


七、目录操作

1. 创建目录  make  directory

> mkdir  newdir\r> mkdir -p newdir/newdir/newdir     //递归方式创建多级目录\r    newdir新目录多于1个层次(2/3/4等)就设置-p参数,如果就一个新的目录则无需-p参数\r> mkdir  dir/newdir\r> mkdir  dir/dir/newdir\r> mkdir -p dir/newdir/newdir

2. 移动(改名字)目录  move (目录/文件 都可以操作)

> mv  dir1  dir2                    //dir1移动到dir2目录下,并给改名字为"原名"\r> mv  dir1  dir2/newdir             //dir1移动到dir2目录下,并给改名字为newdir\r> mv  dir1/dir2  dir3/dir4          //dir2移动到dir4目录下,并给改名字为"原名"\r> mv  dir1/dir2  dir3/dir4/newdir   //dir2移动到dir4目录下,并给改名字为 newdir\r> mv  dir1/dir2  ./                 //dir2移动到 当前 目录下,并给改名字为"原名"\r> mv  dir1/dir2  ./newdir           //dir2移动到 当前 目录下,并给改名字为newdir

3.  复制(改名字)目录  copy (目录/文件 都可以操作)

3.1 复制普通文件

> cp  file1  dir1             //file1被复制到dir1目录下一份,并给改名字为“原名”\r> cp  file1  dir1/newfile     //file1被复制到dir1目录下一份,并给改名字为newfile

3.2 复制目录 -r 参数要求  recursive递归方式拷贝目录

> cp -r dir1  dir2            //dir1被复制到dir2目录下一份,并给改名字为“原名”\r> cp -r dir1  dir2/newdir     //dir1被复制到dir2目录下一份,并给改名字为newdir\r> cp -r dir1/dir2/dir3   dir4/dir5  //dir3被复制到dir5目录下一份,并给改名字为"原名"

4. 删除 remove

> rm filename      //普通文件删除\r> rm -r dir         //删除目录[无视层次]需要-r参数\r> rm -rf  文件      //recursive force 递归强制删除文件\r                    //force 避免删除隐藏文件的提示\r> rm -rf  /         //递归强制方式删除系统里边的全部内容


八、用户操作

user,配置文件 /etc/passwd

1. 创建 add

># useradd  username              //创建用户会同时创建同名组\r># useradd  -g  组编号   username     //创建用户的同时设置组别\r># useradd  -g 组编号 -u 用户编号 -d 家目录 username \r                          //创建用户同时,指定组别、用户编号、家目录

2. 修改 modify

># usermod  -g gid  username   //修改组别是常见操作\r># usermod  -g gid -u uid -d 家目录  -l  newname   username   \r                    //修改组别、用户编号、家目录、名字

注意

家目录修改后需要手动创建,不同于创建用户家目录设置

创建用户时设置家目录,该目录会自动创建

修改用户家目录时,该目录不会自动创建(需要手动创建)

3. 删除 delete

># userdel username     //删除用户(删除passwd文件对应信息),此时其家目录需要手动删除\r># userdel -r username  //删除用户的同时也删除其“家目录”


九、组别操作

group, 配置文件/etc/group

1. 创建 add

># groupadd  groupname

2. 修改 modify

># groupmod -g gid  -n newname  groupname

3. 删除 delete

># groupdel 组名\r   //注意:只有空组(内部没有用户信息)才允许删除


十、vi编辑器使用

1.  命令模式-->编辑模式切换(插入/Insert)

a     "光标" 向后移动一位\ri     "光标" 和 "内容" 没有变化\ro     "新"起一个空白行\rs     "删除"光标所在字符

2. 尾行模式作用

:q      quit退出编辑器\r:wq     write quit 保存并退出\r:w      write 保存\r:q!     强制退出(不要保存)\r:w!     强制写保存\r:wq!    强制保存退出\r\r:set number 或 set nu           //给编辑器设置行号\r:set nonumber 或 set nonu       //取消行号设置\r\r:数字   光标跳转到数字所在行\r\r:/内容/  或 /内容         //内容查找,小写n(next)下一个\r                                          大写N(next)上一个\r\r#内容替换 "cont1"被替换为"cont2"\r:s/cont1/cont2/         //把光标所在行的"第一个"cont1替换为cont2\r:s/cont1/cont2/g        //把光标"所在行"的全部cont1替换为cont2\r:%s/cont1/cont2/g       //把"整个文档"中的全部cont1替换为cont2

3. 命令模式操作

3.1  光标移动

a. 字符级\r     上(k)  下(j)  左(h)  右(l) 键\rb. 单词级\r      w  word下个单词首字母\r      e  end下(本)个单词尾字母\r      b  before上(本)个单词首字母\rc. 行级\r      $ 行尾\r      0 行首\rd. 段落级(两部分内容中间有空行,彼此成为段落)\r      {  上(本)个段落首部\r      }  下(本)个段落尾部\re. 屏幕级(不给翻屏)\r      H  屏幕首部\r      L  屏幕尾部\rf. 文档级\r      G   文档尾行\r      1G  文档第一行\r      nG  文档第n行

3.2 内容删除

dd      删除光标所在行\rn+dd    包括当前行在内向下删除n行内容\rx       字符级删除,删除光标所在字符\rcw      光标所在字符删除至单词结尾(是删除单词的便捷方式)\r        同时会进入编辑模式

3.3 内容复制

yy      复制光标所在行\rn+yy    包括当前行在内向下复制n行内容\rp       对复制(删除)好的内容进行粘贴操作

3.4 便捷操作

u       undo撤销,从文件打开后的所有操作都可以撤销\rr       对单词字符进行替换\r.       重复执行"最近"的一条指令\rJ       合并上下两行


十一、权限设置

1.  "字母相对方式"设置权限

权限: r读 w写 x执行

用户: u主人  g同组  o其他组

chmod  u+/-rwx, g+/-rwx, o+/-rwx  文件

不同用户通过",逗号"分隔

在同一个用户里边,+/-只能用“一个”

"rwx"在同一个用户里边可以设置一个或多个

"ugo" 每次权限操作可以设置一个或多个用户

>chmod u+rw  filename        //主人增加读、写\r>chmod g-rx  filename        //同组删除读、执行\r>chmod u-w,g+x filename      //主人删除写,同组增加执行\r>chmod o+w,o-x  filename     //其他组用户“增加写、删除执行”

2. "数字绝对方式" 设置权限

 读: 4    写: 2   执行: 1

   权限类型:

   0:  没有权限

   1:  执行

   2:  写

   3:  写、执行

   4:  读

   5:  读、执行

   6:  读、写

   7: 读、写、执行

>chmod  ABC  filename   //ABC分别代表主人、同组、其他组用户权限\r>chmod 764  filename   //主人读、写、执行,  同组读、写,    其他读\r>chmod 777  filename   //满贯权限\r>chmod 000  filename   //所有用户没有任何权限

字母和数字方式取舍:

    权限修改的比较"少",就使用字母方式

    权限修改的比较"多",就使用数字方式


十二、在文件中查找指定内容

grep  内容  (绝对/相对路径)目标文件

> grep  sbin  /etc/passwd       //在passwd文件中查找sbin字样,会把sbin所在行的内容都输出


十三、查看文件占据磁盘空间大小

> du -h   文件/目录  \r> du -h  文件名称      //以k M的形式查看文件占据磁盘空间大小


十四、文件查找

find  现值查找目录  选项  选项值  选项 选项值...、

1.  name 根据文件名字查找指定的文件

find  目录  -name  完整文件名称\r> find  /  -name  passwd[完整名称]    //"递归遍历"系统全部目录查找名字等于passwd的文件 \r> find  /etc  -name passwd[完整名称]  //递归遍历/etc及内部所有目录查找  名字等于passwd的文件\r> find  目录 -name  "an*"[部分名称]   //模糊查找文件名字以an开始的

2.  对查找的目录层次进行限制

-maxdepth  限制查找的最"深"层次\r-mindepth  限制查找的最"浅"层次\r> find / -name passwd -mindepth 3 -maxdepth 4   //在3到4个层次的目录里边定位passwd文件

3. 根据文件大小进行查找

size   单位

> find ./  -size  50c      //在当前目录下查找大小[等于]50个字节的文件\r    单位:\r        数量         单位      实际大小\r        100 -------> 512字节:【100*512字节】\r        50c -------> 字节 :   【50字节】\r        50k -------> 千字节: 【50*1024字节】\r        50M -------> 兆字节    【50*1024*1024字节】\r> find  ./  -size  +50c    //在当前目录下查找大小[大于]50个字节的文件\r> find  ./  -size  -50c    //在当前目录下查找大小[小于]50个字节的文件


十五、开关机指令

># reboot   //重启\r># poweroff  //关机