阅读文本内容
- cat:查看全部
格式:cat [选项]… 文件名…
-n:在每一行(含空行)前显示行号 - more:阅读
格式:more [选项] 文件名…
按Enter键下翻一行、空格键下翻一屏
按b向上翻一屏
按q或Q键退出、/键向后查找
按?键了解操作说明 - less阅读(较好)
less [选项] 文件名…
按PgUp向前翻页、PgDn向后翻页
按?键向前、按/键向后查找(n,N切换)
其他与more命令类似
提取文本内容
- head/tail:截取文件首部/尾部
格式:head -n 数字 文件名
tail -n 数字 文件名
1、未指定行数时,默认输出10行
2、选项“-n 数字”可缩写为“-数字”
重定向输出
- >:重定向输出
示例:将ls命令的man手册页保存为file.txt文件
#man ls > file.txt
管道操作
- 查看文件的第8-12行
#head -n 12 /etc/passwd | tail -n 5(前面12行中取最后5个) - 利用管道 | 对输出信息进行分页
示例:#ls –help | more
统计文本
- wc:Word Count
格式:wc [选项]… 文件名…
-l:计算文本的总行数
-w:计算单词个数
-c:计算文件的字节数
-m:计算字符个数
若无选项,相当于-lwc
示例:
统计一共有多少用户账号
#wc -l /etc/passwd
计算/etc/目录下.conf配置文件的个数
ls -l /etc/*.conf | wc -l
检索文本
- grep:按照条件检索文本行,输出包含指定字符串的行
格式:grep [选项]… ‘查找条件’ 目标文件
-i:忽略大小写
-v:反向查找,输出不符合查找条件的行
–color:突出显示查找字符串
示例:#grep –color ‘127.0.0.1’ /etc/hosts
查找条件:
^…:表示以…开头
…$:表示以…结尾
^$:表示空行
计算以/bin/bash作登录shell的用户个数
#grep -c '/bin/bash' /etc/passwd
查找多个关键词,匹配任一个都输出
#grep -E 'SKEL|SHELL' /etc/default/useradd
跨平台的文件传递
- Zip压缩操作
– 格式:zip 压缩包名 被压缩的文件…
– 结合选项 -r 可打包目录 - unzip解压缩操作
– 格式:unzip [-d 目标文件夹] .zip压缩包
示例:
#ls -lh /etc > ziptest.txt(将/etc文件夹下的所有文件重定向到aiptest.txt中)
#zip ziptest.txt.zip ziptest.txt(压缩文件到ziptest.txt.zip中)
#ls -lh ziptest.*(查看目录下的文件)
#unzip -d zdir/ ziptest.txt.zip(解压文件到zdir文件夹下)
#ls zdir/(查看zdir文件夹内的文件)
Linux压缩工具
压缩格式 | 压缩工具 | 解压缩工具 |
---|---|---|
.gz | gzip | gunzip或gzip -d |
.bz2 | bzip2 | bunzip2或bzip2 -d |
.xz | xz | unxz或xz -d |
linux归档工具
- tar 制作归档
– 格式:tar [选项]… 归档文件 原文件或目录 - tar 释放归档
– 格式:tar [选项]… 归档文件 [-C 目标目录]
tar命令常用选项:
-c:创建.tar格式的归档文件
-x:解开.tar格式的归档文件
-C:解包时指定释放的目标文件夹
-f:表示使用归档文件
-z、-j、-J:分别调用gzip、bzip2、xz压缩/解压缩
-v:输出详细信息
-t:列表查看包内的文件
示例:
制作.tar.gz包文件
#tar -zcf boot.tar.gz /boot/
释放.tar.gz包文件
#tar -zxf boot.tar.gz -C tmp/(解压到当前目录下的tmp文件夹下)
查看boot.tar.gz文件内包含哪些内容
# tar -tvf boot.tar.gz
查找可执行程序
- which 搜索工具
– 格式:which [-a] 程序名…
默认会查找别名,但不查找内部命令 - locate文件定位
- 建立定位索引库
– 执行updatedb命令
– 默认位置:/var/lib/mlocate/mlocate.db - locate定位工具
– 格式:locate [选项]… 关键字
- 建立定位索引库
示例:
#touch myhttpd.conf
#updatedb
#locate httpd.conf
- find精确查找
- find查找工具
– 格式:find [查找范围] [查找条件] - 常用的查找条件
– -type:按文件类型查找
– -name:按文件名称查找
– -size:按文件大小查找
– -mtime:按内容修改的时间
- find查找工具
- 按指定的类型查找(f:普通文件、d:目录、l:连接文件、b:块设备文件、c字符设备文件)
示例:
#find /boot -type l(查找boot下的连接文件)
#find /boot -type d(查找boot下的目录文件)
- 按名称查找
– -name,可使用通配符
示例代码:
#find /etc -name "resol*.conf"
#find /dev -type c -a -name "tty[1-3]"
(-a:多个条件同时满足
-c:多个条件满足其中任意一个)
- 按大小查找
– -size [ + | - ]大小
示例:
#ls -lh /boot/*.img(查看目录下的img文件)
#find /boot/ -name "*.img" -a -size +2M(查找目录下以img为后缀且文件大小大于2M的文件)
- 按文件修改时间查找
– -mtime [ + | - ]天数,在n天之前|之内修改过
#cp /root/install.log ./
#cp install.log install.new
#ls -lh install.???
#find -name "install.???" -a -mtime +2
- 处理find找到的文件
– find [范围] [条件] -exec 处理命令 {} \;
– 根据条件查找并处理结果
示例代码:
#find /boot -size +2M
#find /boot -size +2M -exec ls -lh {} \;