原文链接:https://wangchujiang.com/linux-command/ https://blog.csdn.net/Suet_Nay/article/details/119965421
1. 目录与文件操作命令 1.1. 显示目录内容列表 ls https://wangchujiang.com/linux-command/c/ls.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 $ ls $ ls -a $ ls -al $ ls -l $ ll $ ls -R $ ll -t
1.2. 切换目录 cd https://wangchujiang.com/linux-command/c/cd.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 $ cd $ cd ~ $ cd / $ cd .. $ cd ../ $ cd ./ $ cd - $ cd ~zenkin
1.3. 显示当前所在的目录 pwd https://wangchujiang.com/linux-command/c/pwd.html
1.4. 创建新目录 mkdir https://wangchujiang.com/linux-command/c/mkdir.html
1 2 3 4 5 6 7 8 9 10 11 $ mkdir test $ mkdir -p test1/test2/test3/test4 $ mkdir test2 test3 test4 $ mkdir -m 711 test5
1.5. 复制目录与文件 cp https://wangchujiang.com/linux-command/c/cp.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 $ cp -r ./a ./test $ cp -a ./a ./test $ cp a.txt ./test $ cp -p a.txt ./test $ cp -a ./a ./test
1.6. 移动目录与文件、或更名 mv https://wangchujiang.com/linux-command/c/mv.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 $ mv test3 test $ mv test1 test2 test $ mv test1 test3 $ mv a.txt test $ mv a.txt b.txt test $ mv a.txt b.txt
1.7. 删除空目录 rmdir https://wangchujiang.com/linux-command/c/rmdir.html
1 2 3 4 5 $ rmdir test5 $ rmdir -p test1/test2/test3/test4
1.8. 删除目录 rm https://wangchujiang.com/linux-command/c/rm.html
1 2 3 4 5 6 7 8 9 10 11 $ rm -r test1 $ rm -rf test1 $ rm a.txt $ rm -f a.txt
1.9. 创建文件 touch https://wangchujiang.com/linux-command/c/touch.html
1 2 3 4 5 $ touch a.txt $ touch b.txt c.txt d.txt
1.10. 查看文件内容 1.10.1. 连接多个文件并打印到标准输出 cat https://wangchujiang.com/linux-command/c/cat.html
1 2 3 4 5 6 7 8 $ cat a.txt $ cat -n a.txt $ cat -A /etc/resolv.conf
1.10.2. 显示文件内容,每次显示一屏 more https://wangchujiang.com/linux-command/c/more.html
more命令 是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。
该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比:–More–(XX%)可以用下列不同的方法对提示做出回答:
按 Space
键:显示文本的下一屏内容。
按 Enter
键:只显示文本的下一行内容。
按斜线符|
:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。
按H键:显示帮助屏,该屏上有相关的帮助信息。
按B键:显示上一屏内容。
按Q键:退出more命令。
1.10.3. 分屏上下翻页浏览文件内容 less https://wangchujiang.com/linux-command/c/less.html
1.10.4. 查看文件前几行 head https://wangchujiang.com/linux-command/c/head.html
1 2 3 4 5 6 7 8 9 $ head /etc/wgetrc $ head -20 /etc/wgetrc $ head -n 20 /etc/wgetrc $ head -n-100 /etc/wgetrc
1.11. 查看文件后几行 tail https://wangchujiang.com/linux-command/c/tail.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 $ tail /etc/wgetrc $ tail -20 /etc/wgetrc $ tail -n 20 /etc/wgetrc $ tail -n+100 /etc/wgetrc $ head -n 20 /etc/wgetrc | tail -n 10 $ tail -f /etc/wgetrc
1.12. 查找命令 1.12.1. 查找并显示给定命令的绝对路径 which https://wangchujiang.com/linux-command/c/which.html
1 2 3 4 5 $ which cd $ which nginx
1.12.2. 查找二进制程序、代码等相关文件路径 whereis https://wangchujiang.com/linux-command/c/whereis.html
1.12.3. 查找文件或目录 find
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 $ find /etc -name sudo $ find /etc -name "sudo???" $ find /etc -name "*.conf" -ls $ find /etc -size -204800 $ find . -type d find /root/ -perm 600 find . -name ".DS_Store" -delete
1.12.4. 查找文件内容 grep https://wangchujiang.com/linux-command/c/grep.html
grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。用于过滤/搜索的特定字符。可使用正则表达式能配合多种命令使用,使用上十分灵活。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 $ grep "love" a.txt $ grep -c "love" a.txt $ grep -i "Love" a.txt $ grep -n "love" a.txt $ grep -v "love" a.txt history | grep git
2. 压缩和解压文件、打(解)包目录和文件 2.1. 压缩文件 gzip https://wangchujiang.com/linux-command/c/gzip.html
1 2 3 4 $ gzip a.txt $ gzip b.txt c.txt
2.2. 用于解压缩由zip命令压缩的压缩包 unzip https://wangchujiang.com/linux-command/c/unzip.html
1 2 3 4 5 $ ungzip test.zip $ unzip -n test.zip -d /tmp
2.3. 打(解)包目录和文件 tar 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 $ tar -cvf a.tar a.txt $ tar -cvf test.tar test $ tar -cvf abc.tar a.txt b.txt c.txt $ tar -rvf a.tar d.txt $ gzip a.tar $ tar -zcvf abc.tar.gz a.txt b.txt c.txt $ tar -xvf a.tar $ tar -zxvf abc.tar.gz $ tar -zxvf abc.tar.gz -C test
3. VI编辑器(VIM) 3.1. 插入命令 命令 作用 a 在光标后附加文本 A(shift + a) 在本行行末附加文本 行尾 i 在光标前插入文本 I(shift+i) 在本行开始插入文本 行首 o 在光标下插入新行 O(shift+o) 在光标上插入新行
3.2. 定位命令 命令 作用 :set nu 设置行号 :set nonu 取消行号 gg 到第一行 G(shift+g) 到最后一行 nG 到第n行 :n 到第n行
3.3. 保存和退出命令 命令 作用 :w 保存修改 :w new_filename 另存为指定文件 :w >> a.txt 内容追加到a.txt文件中 文件需存在 :wq 保存修改并退出 :wq! 保存修改并强制退出(文件所有者可忽略文件的只读属性) shift+zz(ZZ) 快捷键,保存修改并退出 :q! 不保存修改退出 ctrl+z 快捷键,将命令挂起在后台
注意:将 vi
命令挂起至后台后,在列表里会出现一个隐藏文件 .swp
。输入 fg
进入 vi
编辑器重新修改,修改完成,.swp
文件会自动被删除。
3.4. 删除命令 命令 作用 x 删除光标所在处字符 nx 删除光标所在处后n个字符 dd 删除光标所在行,ndd删除n行 :n1,n2d 删除指定范围的行(eg :1,3d 删除了123这三行) dG 删除光标所在行到末尾的内容 D 删除从光标所在处到行尾
3.5. 复制和剪切命令 命令 作用 r 取代光标所在处字符 R(shift + r) 从光标所在处开始替换字符,按Esc结束 u undo,取消上一步操作 ctrl+r redo,返回到undo之前
3.6. 替换和取消命令 命令 作用 r 取代光标所在处字符 R(shift + r) 从光标所在处开始替换字符,按Esc结束 u undo,取消上一步操作 ctrl+r redo,返回到undo之前
3.7. 搜索和替换命令 命令 作用 /string 向后搜索指定字符串 搜索时忽略大小写 :set ic ?string 向前搜索指定字符串 n 搜索字符串的下一个出现位置,与搜索顺序相同 N(Shift + n) 搜索字符串的上一个出现位置,与搜索顺序相反 :%s/old/new/g 全文替换指定字符串 :n1,n2s/old/new/g 在一定范围内替换指定字符串
4. 权限管理 4.1. 用户管理 4.1.1. 添加用户 useradd https://wangchujiang.com/linux-command/c/useradd.html
4.1.2. 用于修改用户的基本信息 usermod https://wangchujiang.com/linux-command/c/usermod.html
4.1.3. 修改密码 passwd
4.1.4. 删除用户 userdel https://wangchujiang.com/linux-command/c/userdel.html
1 2 3 4 $ userdel -r zhangsan
4.1.5. 4.1.5 查询用户所属组 groups https://wangchujiang.com/linux-command/c/groups.html
4.2. 用户组管理 4.2.1. 管理用户主要组的成员 groupmems https://wangchujiang.com/linux-command/c/groupmems.html
1 2 3 groupmems -l -g SUPPORT groupmems --list -g SUPPORT
4.2.2. 新增用户组 groupadd https://wangchujiang.com/linux-command/c/groupadd.html
4.3. 修改用户组 groupmod https://wangchujiang.com/linux-command/c/groupmod.html
1 2 3 $ groupmod -n it-group developer
4.4. 删除用户组 groupdel https://wangchujiang.com/linux-command/c/groupdel.html
4.5. 管理用户组中的用户 gpasswd https://wangchujiang.com/linux-command/c/gpasswd.html
1 2 3 4 5 6 7 8 $ grep "it-group" /etc/group $ gpasswd -a developer1 it-group $ gpasswd -d developer3 it-group
5. 文件或目录属性与权限管理 5.1. 更改文件或目录所属用户组 chgrp https://wangchujiang.com/linux-command/c/chgrp.html
1 2 3 4 5 $ chgrp it-group a.txt $ chgrp -R it-group a
5.2. 更改文件或目录所有者 chown https://wangchujiang.com/linux-command/c/chown.html
1 2 3 4 5 6 7 8 9 10 11 $ chown developer1 a.txt $ chown -R developer2 a $ chown root:root a.txt $ chown -R developer2 a
5.3. 更改文件或目录权限 chmod https://wangchujiang.com/linux-command/c/chmod.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 $ chmod 754 a.txt $ chmod u=rwx,g=rx,o=r a.txt $ chmod a-r a.txt $ chmod 711 a $ chmod -R 777 a
6. 系统管理 6.1. 切换用户 su https://wangchujiang.com/linux-command/c/su.html
1 2 3 4 5 $ su zhangsan [zhangsan@localhost root]$ exit
6.2. 关机与重启命令 shutdown https://wangchujiang.com/linux-command/c/shutdown.html
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 $ shutdown -h now $ shutdown $ shutdown -h 1 "1分钟后关机" $ reboot $ shutdown -r 1 "1分钟后关机重启" $ shutdown -c
6.3. 查看内存及交换空间使用状态 free 1 2 $ echo 1 > /proc/sys/vm/drop_caches