title: linux运维之道
date: 2021-03-24 11:23:36
tags:Linux
一、命令工具
1.1 基本命令
1.1.1 目录及文件的基本操作
1. pwd
描述:显示当前工作目录的名称
用法: pwd [选项]…
2. cd
描述:切换当前工作目录
1 | cd .. # 切换工作目录至当前目录的上一级目录 |
3. ls
描述:显示目录与文件信息
用法:ls [选项]… [文件/目录]…
选项:
-a 显示所有,包括隐藏文件与目录。
-d 显示目录本身的信息,而非目录下的文档信息。
-h 人性化显示容量信息。
-l 长格式显示文档的详细信息。
-u 显示文件或目录最后被访问的时间。
-t 以修改时间顺序,ls命令默认是按文件名称排序的。
4. touch
描述:创建或修改文件时间
如果文件不存在则创建,如果已存在则更新文件所有的时间为当前系统时间
5. mkdir
描述:创建目录
用法: mkdir [选项]… [目录]…
选项:-p 创建多级目录
6. cp
描述:复制文件与目录
用法:cp [选项] 源 目标
选项:
-r 递归,复制子文件与子目录,一般复制目录时使用。
-a 复制时保留原文档的所有属性(包括权限、时间等)。
7. rm
描述:删除文件或目录
用法: rm [选项]… 文件…
选项:
-f 不提示,强制删除
-i 删除前,提示是否删除
-r 递归删除,删除目录以及目录下的所有内容
8. mv
描述:移动(重命名)文件或目录
9. find
描述:搜索文件或目录
用法:find [命令选项] [路径] [表达式选项]
选项:
-empty 查找空白文件或目录
-group 按组查找
-name 按文档名称查找
-iname 按文档名称查找且不区分大小写
-mtime 按修改时间查找
-size 按容量大小查找
-type 按文档类型查找,文件(f),目录(d),设备(b,c),连接(l)等。
-user 按用户查找
-exec 对找到的文档执行特定命令
-a 并且
-o 或者
1 | find /root -name "*.log" #查找/root目录下所有名称以.log结尾的文档 |
10. du
描述:计算文件或目录的容量
用法:du [选项]… [文件或目录]…
选项:
-h 人性化展示容量信息
-a 查看所有目录以及文件的信息
-s 仅显示总容量
1.1.2 查看文件内容
1. cat
描述:查看文件内容
用法:cat [选项]… [文件]…
选项:
-b 显示行号,空白行不显示行号
-n 显示行号,包括空白行
2. more
描述:分页查看文件内容,通过空格键查看下一页,q键则退出查看
3. less
描述:分页查看文件内容,空格(下一页)、方向键(上下回翻)、q键(退出查看)
4. head
描述:查看文件头部内容,默认显示前10行
用法:head [选项]…[文件]…
选项:
-c nK 显示文件前nKB的内容
-n 显示文件前n行的内容
5. tail
描述:查看文件的尾部内容,默认显示文件的末尾10行
用法:tail [选项]… [文件]…
选项:
-c nK 显示文件末尾nKB的内容
-n 显示文件末尾n行的内容
-f 动态显示文件内容,常用于查看日志,按ctrl+c组合键退出
6. wc
描述:显示文件的行、单词与字节统计信息
用法:wc [选项]…[文件]…
选项:
-c 显示文件字节统计信息
-l 显示文件行数统计信息
-w 显示文件单词统计信息
7. grep
描述:查找关键词并打印匹配的行
用法:grep [选项] 匹配模式 [文件]
选项:
-i 忽略大小写
-v 取反匹配
-w 匹配单词
–color 显示颜色
1 | grep th test.txt # 在test.txt文件中过滤出包含th的行 |
8. 基本命令:echo
描述:显示一行指定的字符串
用法:echo [选项]…[字符串]…
选项:
-n 不输出换行,默认echo输出内容后会换行
-e 支持反斜线开始的转义字符,屏蔽反斜线后面字符的原本含义
1.1.3 连接文件
Linux中的连接文件不同于windows的快捷方式,linux的连接文件分为软链接与硬链接,软链接可以夸分区,但源文件不可删除,硬连接不可跨分区,但可以将源文件删除。
1. 软链接
1 | ln -s /test/hello.txt /tmp/hi.txt #创建文件软链接 |
2. 硬链接
1 | ln /test/hello.txt /test/hi.txt |
1.1.4 压缩与解压
1. gzip
描述:压缩与解压缩
用法:gzip [选项]…[文件名称]…
选项:-d 解压
1 | gzip hello.txt #文件压缩后名为hello.txt.gz |
2. bzip2
描述:压缩与解压缩
1 | bzip2 hello.txt # 文件压缩后名为hello.txt.bz2 |
提示
:gzip与bzip2工具不可以直接对目录做打包压缩操作
3. tar
描述:打包与解包文件
用法:tar 模式 [选项] [路径]…
模式:
-c 创建打包文件
–delete 从打包文件中删除文件
-r 追加文件至打包文档
-t 列出打包文档的内容
-x 释放打包文件
选项:
-C 指定解压路径
-f 指定打包后的文件名称
-j 打包后通过bzip2格式压缩
–remove-files 打包后删除源文件
-z 打包后通过gzip格式压缩
1 | tar -cf etc.tar /etc/ #将/etc/目录打包保存为etc.tar |
1.1.5 命令使用技巧
- 按tab键补齐命令或路径;如果命令不唯一,如通过键盘输入c,可连续按两次tab键,即可显示所有以c开头的命令
- 键盘输入history可查看命令历史,然后痛过 :!序号, 即可调用命令;也可通过上下方向键翻阅历史命令
- ctrl +l 或者clear清屏
- which+ 命令找到常用命令的存储位置,如which find
1.1.6 帮助
1. man
描述:通过man(manual)手册文档可以帮助我们快速掌握命令用法
例如:man ls
注意: 空格键表示向下翻页,q键表示退出man手册,/关键字(如:/file)搜索需要的内容并通过按键盘上的n键来查看下一行匹配的行
2. info
描述:info信息与man手册内容类似,但info信息是模块化的,它通过链接显示不同的信息块,看起来有点类似于网页
例如:info ls
注意:n键进入下一信息块,P键进入上一信息块,U键返回上一层,空格键翻页,q键退出
3. help
描述:man手册与info信息的内容比较过,可以通过–help来获取简要信息
例如:ls –help