Linux常用命令
一般带 [] 的参数是非必需填写的, 不带 [] 的参数是必填
关机 & 重启
shutdown -h now // 立刻关机, h就代表下面的halt
shutdown -h 3 // 3分钟后关机,数字可以自己改
shutdown -r now // 立刻重启,r就代表下面的reboot
halt // 立刻关机
reboot // 立刻重启
sync // 将内存中的数据同步到磁盘中
- 不管是重启还是关机,都应当先用 sync 命令将数据同步
- 目前上面的关机重启命令都实现了自动 sync 同步数据
文件目录类
- pwd 显示当前工作目录的绝对路径
- ls [选项] [目录或文件的路径]
-a
显示当前目录所有文件和目录,以及隐藏的-l
以列表的方式显示信息
cd ~
回到当前用户的根目录cd ..
回到当前目录的上一级目录- mkdir [选项] 要创建的目录
-p
创建多级目录
- rmdir [选项] 要删除的空目录 该命令只能删除空目录
- touch 文件名称 创建一个空文件,可以在文件名称中直接加上后缀名
- cp [选项] 原地址 目标地址 若不带选项只能将原地址文件拷贝到目标地址
-r
此时原地址可以是目录,递归复制整个目录下的东西到目标地址\cp
此时即使目标地址中和原地址中有相同的文件,也不会提示是否要覆盖,而且强制覆盖
- rm [选项] 路径 当不选用任何选项时,后面的路径只能是文件,此时
rm
只能删除文件-r
递归删除整个文件夹 此时后面的路径可以是目录-f
强制删除不提示-rf
递归删除整个文件夹并不提示
- mv 路径1 路径2
- 如果路径1和路径2在同一个目录,则该指令相当于重命名
- 如果路径1和路径2不在同一个目录,则该指令会把路径1中的内容移动到路径2
- cat [选项] 文件路径 查看文件内容但不能修改
-n
显示行号
- less 文件路径 查看文件内容。但是 less 并不是一次将整个文件加载进内存,而是根据显示需要加载内容,显示大文件时有很高的效率
- echo [选项] [输出内容] 将将内容输出到控制台
- head [选项] 文件路径 默认显示文件的前10行
-n
head -n 5 文件路径 显示文件的前5行,并带行号
- tail [选项] 文件路径 显示文件的尾部内容
- > 和 >>
- eg:
ls > 文件
将本来要输出到终端的内容写到文件中,但是是覆盖写 - eg:
cat a.txt >> 文件
将本来要输出到终端的内容写到文件中,但是是追加写
- eg:
- ln -s [目标文件或目录路径] [软链接路径] 在软链接路径下创建一个文件是到目标文件或目录,相当于windows下的快捷方式
eg:ln -s …/papers ./myroot 于是在当前路径下就多了一个文件名叫myroot,当我们 c d marot 时就可以直接到papers这个目录下.
- which 命令 查看该命令的路径
搜索查找类
-
find [路径] [选项] find指令将从指定路径下递归地遍历其各个子目录,将满足条件的文件或目录显示在终端
-name .txt
可找出指定路径下的txt文件-size +200M
在指定目录下找出大小超过200M的文件( - 表示小于,不带符号表示等于,大小单位有k,M,G)
-
grep [选项] 查找内容 路径
grep -n "yes" /aaa/hello.txt
查找该文件中存在"yes"的行返回,并显示行号- 也可以使用通道符:
cat hello.txt | grep -i "yes"
将获取到的文件内容送给 grep 指令去匹配“yes”, 返回匹配中的行的所有内容
选项 功能 -n 返回时显示行号,是匹配行在原文件的行号 -i 匹配时忽略大小写
日期时间类
- date 显示当前日期及时间
- date +%Y 仅显示年份,其他的同理:日期中,两位数用小写,四位数用大写;时间中,均用大写
压缩和解压缩类
- zip 选项 文件 下面举例:
//将hello.txt和test.txt压缩为test.zip
zip test.zip /Desktop/hello.txt /Desktop/test.txt
zip -r test.zip /test // 将该目录压缩,如果涉及到目录 应该用参数-r 递归压缩
zip -r test.zip /test -x /test/aaa // 将test文件夹压缩,除了aaa文件
zip -r test.zip /test -x \*.txt // 将test文件夹压缩,除了所有的txt文件
zip -d test.zip /test/hah.txt // 从压缩包中删除某个文件
zip -f 压缩包名 待更新的文件
zip -u 压缩包名 待更新或追加的文件
选项 | 作用 |
---|---|
-q | 不显示指令执行过程 |
-r | 递归处理,将指定目录下的所有文件和子目录一起处理 |
-z | 给压缩文件加上注释 |
-v | 显示指令的执行过程 |
-d | 删除压缩包内的文件 |
-n <后缀> | 不压缩具有特定后缀的文件 |
-e | 加密压缩文件 |
-u | 更新或追加文件到压缩包内 |
-f | 更新现有的文件 |
-m | 将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中 |
-o | 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同 |
zip -f
和zip -u
的更新是区别的,前者只能更新已有的文件,如果压缩包中不存在这个文件则不会进行更新,也不会追加;而后者如果压缩包中存在这个文件则会进行更新,如果不存在则会进行追加到压缩包内。
- unzip 选项 参数
unzip test.zip // 把文件解压到当前目录下
unzip -d /temp test.zip // 如果要把文件解压到指定的目录下,需要用到-d参数
// 解压的时候,有时候不想覆盖已经存在的文件,那么可以加上-n参数
unzip -n test.zip
unzip -n -d /temp test.zip
unzip -l test.zip // 只看一下zip压缩包中包含哪些文件,不进行解压缩
unzip -v test.zip // 查看显示的文件列表还包含压缩比率
unzip -t test.zip // 检查zip文件是否损坏
// 将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件
unzip -o test.zip -d /tmp/
其他
- history 查看在终端使用了哪些命令,并且==!命令编号== 直接可以重复执行该命令,中间没有空格