重要的不是要得到什么,是珍重已经拥有的
只要你确信自己正确就去做,而且要做好
目录
-
说明: 当Linux 系统出现故障需要联系技术支持人员时,大多数时候都要先使用这个命令来简单收集系统的运行状态和服务配置信息,以便让技术支持人员能够远程解决一些小问题,亦或让他们能提前了解某些复杂问题内容
-
安装:
# redhat/centos下的安装 yum -y insatll sos #ubuntu下的安装 sudo apt-get install sosreport
-
使用:sosreport [选项]
- 常用选项:
- -l 列出当前enable和disable的所有服务插件及当前available的所有插件
- -a 启用所有的模块
- --no-report 是关闭所有的结果以html /xml 的格式一个总的报告默认开启
- 示例: sosreport -l会列出所有插件信息 sosreport -a会启用所有模块,所有的结果以html /xml 的格式一个总的报告,该包会生成在/tmp或/var/tmp目录下,需要解压缩后得到文件,在sos_reports目录中会有sos.html和sos.txt文件
-
配置文件/etc/sos.conf
#该配置文件的内容
[plugins] #disable = rpm, selinux, dovecot//此处可以设置默认enable和disable的模块 [tunables] //可调参数 #rpm.rpmva = off #general.syslogsize = 15 - 总结:相于supportconfig,由于sosreport是由python语言进行编写的,所以其在功能扩展上更有优势,但由于在不同的发行版本上的python版本不同,在进行功能扩展时,对不同版本间的异常处理相对麻烦。而supportconfig由于是shell 语言编写的一个工具,对版本的依赖相对少些 ,但对一些工具的依赖相对多些 ,如在获取进程相关的信息时,shell 需要将ps工具或处理proc的结果,而sosreport则可以直接import psutil 模块,两者之间的区别,归根到底就是shell 和python的区别。
-
说明:使用该命令可以轻松切换当前shell进程下的工作目录
-
使用:cd <dir>
-
dir参数的说明:
- 为空直接切到当前用户的家目录
- 为一个具体目录则切换至该目录下如切换到/etc下使用cd /etc即可
- 为 - 则表示在前一个目录和当前目录反复切换
- 为 . 表示当前目录
- 为 .. 表示到上一级目录
- 为 ~ 表示到家目录
- 为 ~username 表示到指定用户的家目录
-
说明:形如这样的命令要谨慎执行,因为它可能会包含恶意代码
-
说明:该命令用于文件的移动和重命名,类似于剪切
-
用法:mv [option] src... desc
-
选项:-b若源文件移动至目标目录中,目标目录中有一个同名的文件,则会自动创建一个目标目录下该文件的备份
-
示例:
- 将/tmp/test目录下的所有文件移动至/tmp目录下 mv /tmp/test /tmp
- 将a.txt文件重命名为b.txt mv ./a.txt ./b.txt
-
注意:此命令在使用前最好做好相应备份,以免一些误操作带来风险
-
说明:可以连接文件(会将多个文件的内容连在一起显示)并打印到标准输出设备上,一般用于文件内容简短的文件
-
用法:cat [option]...[file]...
-
选项:
- -n 显示行号
- -b显示行号不包括空行
- -A显示所有包括一些不可见的符号如空格^I tab等
- -E显示换行符号$
-
示例:
- 将/etc/issue和/etc/fstab连在一起显示cat /etc/issue /etc/fstab
- 以显示行号和换行符的方式显示/etc/fstab cat -nE /etc/fstab
- 将文件f1.txt和f2.txt的内容合并到文件f.txt中 cat f1.txt f2.txt > f.txt
-
注意:与之相反的一个命令tac是以逆序显示文件内容第一行最后显示,最后一行先显示详细参阅man tac
-
说明:是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。一般用于查看文件内容很长的文件
-
用法:more
- 与之类似命令less:作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。
-
示例:
- 以10行一页的形式显示文件内容 more -10 /etc/chrony.conf
- 显示之前清屏 more -10 -c /etc/chrony.conf
-
说明:默认显示文件开头10行的内容
-
用法:head [选项]... [file]...
-
常用选项:-n指定显示开头n行
-
示例:显示/etc/fstab文件的头3行内容 head -n3 /etc/fstab
-
说明:默认显示末尾10行
-
tail [OPTION]... [FILE]...
-
常用选项:
- -c显示文件的最后多少个字符
- -n指定显示末尾n行
-
示例:显示/etc/chrony.conf的内容要求末尾3行 tail -n3 /etc/chrony.conf 显示最后8个字符tail -c 8 /etc/chrony.conf,实际少了一个
-
说明:经常用来编写优美的单行命令,作用很强大
-
使用:tr [OPTION]... SET1 [SET2]
-
参数说明:
- SET1 :指定要转换或删除的原字符集
- SET2:指定要转换成的目标字符集
-
常用选项:
- -d删除输出字符串的指定的字符集
- -c取代所有不属于SET1的字符
- -s把连续重复的字符压缩成单个字符
-
示例
- 将输入字符由大写转换为小写echo "ABcd" | tr "A-Z" "a-z"
- 使用tr删除数字字符echo "02ad09" | tr -d "0-9"
- 将制表符转换为空格cat a.txt | tr "\t" " "
- 将输入字符中不在指定字符集中的字符删除echo "dsd12 多岁的 3 5" | tr -d -c "0-9 "
- 用tr压缩字符,可以压缩输入中重复的字符echo "thisssss is a deskkkk" | tr -s "sk"
- 巧妙使用tr做数字相加操作echo "1 2 3 4 5 6 7 8 9" | xargs -n1 | echo $[$(tr "\n" "+")0]
- 删除Windows文件“造成”的'^M'字符cat a.txt | tr -d "\r" > newfile.txt
- tr可以使用的字符类
- [:alnum:]字母和数字
- [:alpha:]字母
- [:digit:]数字
- [:graph:]图形数字
- [:cntrl:]控制(非打印)字符
- [:print:]可打印字符
- [:punct:]标点符号
- [:lower:]小写字母
- [:upper:]大写字母
- [:space:]空白字符
- [xdigit]16进制字符
-
说明:利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。
-
使用:wc [OPTION]... [FILE]...
-
常用选项:
- -l统计文件行数
- -c统计文件字节数包括隐藏的特殊字符
- -w统计文件字/单词数
-
示例:
- 统计行数wc -l /etc/issue
- 统计字节数wc -c /etc/issue
- 统计所有wc/etc/issue