##1、压缩与解压缩
.tar
压缩:tar cvf FileName.tar FileName
解压:tar xvf FileName.tar
---------------------------------------------
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
---------------------------------------------
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
---------------------------------------------
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
---------------------------------------------
.tgz
解压:tar zxvf FileName.tgz
压缩:未知
.tar.tgz
解压:tar zxvf FileName.tar.tgz
压缩:tar zcvf FileName.tar.tgz FileName
---------------------------------------------
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
---------------------------------------------
.rar
解压:rar a FileName.rar
压缩:rar e FileName.rar
各个不同后缀的含义如下:
- .tar打包格式:tar程序打包的数据,并没有压缩过
- .z格式:compress程序压缩的文件
- .gz压缩格式:gzip程序压缩的文件 .bz2压缩格式:bzip2程序压缩的文件
- .tar.gz打包压缩:tar程序打包的文件,其中并且经过 gzip 的压缩
- .tar.bz2打包压缩:tar程序打包的文件,其中并且经过 bzip2 的压缩
tar是打包命令,比较常见,下面给出他的不同参数的含义
- -c: 建立压缩档案
- -x:解压
- -t:查看内容
- -r:向压缩归档文件末尾追加文件
- -u:更新原压缩包中的文件
原文出处:https://blog.youkuaiyun.com/liuyanfeier/article/details/62422315
##2、系统信息
###2.1 进程查询:ps
- 查看正在运行的进程
# 常结合grep筛选信息(e.g, ps -ef | grep xxx)
ps -ef
- 以完整格式显示所有进程
# 常结合grep筛选信息
ps -ajx
###2.2 进程监控:top
- 显示实时进程信息
# 这是个大招,都不带参数的,具体信息通过grep筛选
# 交互模式下键入M进程列表按内存使用大小降序排列,键入P进程列表按CPU使用大小降序排列
# %id表示CPU空闲率,过低表示可能存在CPU存在瓶颈
# %wa表示等待I/O的CPU时间百分比,过高则I/O存在瓶颈 > 用iostat进一步分析
top
###2.3 监控性能指标:sar
2.3.1 监控CPU
- 监控CPU负载
# 加上-q可以查看运行队列中进程数,系统上进程大小,平均负载等
# 这里"1"表示采样时间间隔是1秒,这里"2"表示采样次数为2
sar -q 1 2
- 监控CPU使用率
# 可以显示CPU使用情况
# 参数意义同上
sar -u 1 2
2.3.2 监控内存
- 查询内存
# 可以显示内存使用情况
# 参数意义同上
sar -r 1 2
- 页面交换查询
# 可以查看是否发生大量页面交换,吞吐率大幅下降时可用
# 参数意义同上
sar -W 1 2
2.4 待补充。。。
##3、文本处理
###3.1 文件查找: find
####3.1.1 按名字查找
- 查找具体文件(一般方式)
find . -name *.cpp
- 查看目录下文件数
ls -l | wc -l
ls -lR|grep "^-"|wc -l # 包含子目录
- 查找具体文件(正则方式)
# -regex为正则查找,-iregex为忽略大小写的正则查找
find -regex ".*.cpp$"
####3.1.2 定制查找:
- 按类型查找
# f(file)为文件,d(dictionary)为目录,l(link)为链接
find . -type f
- 按时间查找
# atime为访问时间,x天内加参数"-atime -x",超过x天加"-atime -x"
# mtime为修改时间
find . -type f -atime -7
- 按大小查找
# -size后接文件大小,单位可以为k(kb),m(MB),g(GB)
find . -type f -size -1k
- 按权限查找
# -perm后接权限
find . -type -perm 644
###3.2 文本搜索:grep
- 模式匹配
# 匹配test.cpp文件中含有"iostream"串的内容
grep "iostream" test.cpp
# 匹配当期目录下py文件中eval字符
find . -name '*.py' | xargs grep eval
- 多个模式匹配
# 匹配test.cpp文件中含有"iostream"和"using"串的内容
grep -e "using" -e "iostream" test.cpp
- 输出信息
# -n为打印匹配的行号;-i搜索时忽略大小写;-c统计包含文本次数
grep -n "iostream" test.cpp
###3.3 排序:sort
- 文件内容行排序
# 排序在内存进行,不改变文件
# -n(number)表示按数字排序,-d(dictionary)表示按字典序
# -k N表示按各行第N列进行排序
# -r(reverse)为逆序排序
sort -n -k 1 test
###3.4 转换:tr
- 字符替换
# 转换在内存进行,不改变文件
# 将打开文件中所有目标字符替换
cat test | tr '1' '2'
- 字符删除
# 转换在内存进行,不改变文件
# -d删除(delete)
cat test | tr -d '1'
- 字符压缩
# 转换在内存进行,不改变文件
# -s位于后部
cat test | tr ' ' -s
###3.5 待补充。。。
##4、待补充
看一个目录下的文件数量:
ls -l | wc -l
打乱txt文件的顺序,并且保证txt每行内容不变:
shuf --help
shuf input.txt -o output.txt
合并两个txt文件
合并1,2到3:
cat 1 2 >> 3
追加1到2
cat 1 >> 2
查看一份目录下的所有文件数量,包括子目录下:
ls -lR | grep '^-' | wc -l
##5、系统命令
1、查看CPU信息
cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id"
2、内存大小
cat /proc/meminfo |grep MemTotal
3、硬盘大小
fdisk -l |grep Disk
4、# 查看内核/操作系统/CPU信息的linux系统信息命令
uname -a
5、查看操作系统版本,是数字1不是字母L
head -n 1 /etc/issue
6、查看CPU信息的linux系统信息命令
cat /proc/cpuinfo
原文链接: https://blog.youkuaiyun.com/u011956147/article/details/79880997