Linux常用命令(第三部分:文件查看与处理)
30.cat:输出文本内容到屏幕
适合查看小文件,100行以内的文件。
用法:cat filename
补充:echo输出信息到屏幕
>重定向符号,先清空文件内容,然后再写入
#echo 123456 >1.txt
>>叫做追加重定向,把信息写入到末尾
#echo 123456>>1.1xt
cat这个命令可以快速查看文件内容,甚至把多个文件拼起来显示:
# 创建两个测试文件
echo "这是文件1的内容" > file1.txt
echo "这是文件2的内容" > file2.txt
# 查看单个文件内容
cat file1.txt
# 拼接文件内容
cat file1.txt file2.txt > combined.txt
# 显示合并后的文件内容(-n : 加上行号)
cat -n combined.txt
# 查看cup详情
cat /proc/cpuinfo
# 查看内存的详情
cat /proc/meminfo
#输出时,显示行号
cat -n filename
#文本重定向(“>>”是追加,“>”是替换/覆盖)
cat << EOF >> test.txt
hello world!
你好世界
EOF
就是把蓝字保存到test.txt文件夹里
清空文件夹里的文件可以输入“>文件名”
31.tac:倒序输出
用法:tac filename
32.more:翻页查看(只能向下)
用法:more filename
回车键:一行一行翻
空格键:一屏一屏翻
q 退出
33.less:翻页查看(上下翻页)
用法:less filename
回车键:一行一行翻
空格键:一屏一屏翻
上下方向键
q 退出
/ 查找
34.head:查看文件头部(默认十行)
用法:head -n 5 filename 查看前五行(n可以省略)
35.tail:查看文件尾部
用法:tail -n 5 filename 查看最后五行(n可以省略)
举例:
查看第10~15行
head -15文件名|tail -6文件名
查看第10~15行并显示行号
cat -n /etc/passwd | head -15 |hail -6
实时查看日志更新
tail -f 文件名
Linux文件处理四剑客
1、find:文件查找 难度:**
命令格式:find 路径 选项1 条件1 选项2 条件2
① -name :通过文件名查找,可以使用通配符。
② -iname :不区分大小写名称的查找。
eg:find . -name "file.txt"(查找当前目录下名为 file.txt 的文件)
或find /path/to/dir -iname "*test*"(查找文件名中包含 test 的文件)
③ -type :通过文件类型查找,常见类型f文件、d目录、b块文件、l链接文件、c字符文件、s套接字。
eg:find . -type d(查找当前目录下所有目录)
④ -size :通过文件大小查找N[bcwkMG]。
··b块(512字节)c字节 w字(2字节) k千字节 M兆字节 G吉字节
eg:find . -size +10M(找出大于 10MB 的文件)
⑤ -mtime :通过修改时间查找,+1一天以上的文件,-1一天以内,1大约一天。
eg:find . -mtime -7(查找最近 7 天修改过的文件)
⑥ -exec :结合操作,对查找到的结果执行其他操作,例如:cp\mv\rm等操作。
eg:find . -name "*.log" -exec cp {} \;(查找 .log 文件并复制过来)
#单一条件查找
find / -iname “*.log”
#多条件查找
find / -iname “*root*” -type f -mtime -1 -size +1k
#对找的文件执行-exec
mkdir /root/logs
find / -name "*.log" -exec cp {} /root/logs \;
2、grep:字符过滤查找(在文件中查找内容) 难度:**
·格式:grep 选项 条件 文件路径
·使用管道符过滤前一个命令的执行结果
常用选项:
grep -n:显示行号
grep -v:反向选择
grep -r:递归查找,在目录中所有文件内查找
grep/:将前一个命令的执行结果交给后一个命令继续执行
小总结:
匹配方式: 默认区分大小写,-i 忽略大小写,-E 支持多关键词匹配。
显示信息: 用 -n 显示行号,用 -c 统计匹配行数,用 -l 仅列出文件名。
过滤内容: 用 -v 显示不匹配关键词的内容。
递归搜索: 用 -r 搜索目录及子目录中的所有文件。
grep 是命令行中的搜索神器,轻松应对日志分析和快速文本定位!