linux 四剑客 find grepsedawk整理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 四剑客 find grepsedawk整理相关的知识,希望对你有一定的参考价值。
linux 四剑客 find 、grep、sed、awk整理find
主要是用于查找Linux 操作系统的某个文件、目录所在路径,查找出满足条件的文件或者目录的路径
find / -name *.rpm -type d -- ###/:表示是在根目录下进行查找 ###-type:查找的类型,d是目录,f是普通文件
find / -name "con*.log" -exec cp {} /tmp/ \; ####基于 find 查找 Linux 系统以.log 结尾,同时名称以 con 开头的,同时将其 拷贝到/tmp 目录下
find -name filename 查找名为filename的文件
-type b/d/c/p/l/f 查找块设备/目录/字符设备/管道/符号链接/普通文件
-size n[c] 查找长度为n块或n字节的文件
-mtime -n +n 按文件更改时间来查找 -n指n天以内
-atime 按文件访问时间
-ctime 按文件创建时间
-nmin n为分
例子:
find /data/ -name "*.text"
find /data/ -name "[a-z]*" 以小写字母开头的文件
find /data/ ! -type d 查找非文件夹
find /data/ -type l 查找链接文件
find /data/ -type d|xargs chmod 755 -R 查找目录类型并将权限设置755
find /data/ -size +1M
find /data/ -size 1M
find /data/ -mtime +30 -name "*.log"
综合应用:
find /data/ -name "*.log" -type f -size +10m -exec cp{} /tmp/ \;
find /data/ -name "" -type f -mtime +30 -size +10m -exec mv {} /tmp/ \;
grep
grep常用参数如下:
-a 以文本文件方式搜索
-c 计算找到的复合行的次数
-n 输出行号
-v 输出非是自己的字符
-h 不显示文件名
-l 只输出包含匹配字符的文件ming
例子如下:
grep -c "root" /etc/passwd 统计root 的总行数
grep -i "root" /etc/passwd 忽略大小写
grep -n "root" /etc/passwd 打印root的行或者行号
grep -v "root" /etc/passwd 不打印root的hang
grep "root[53]" /etc/passwd 以root开头的字符,接5或者3的行
grep "^[^root]" /etc/passwd 输出行首不是root的行
grep "r\{2,\}" /etc/passwd 打印r字符连续出现2次以上的行
grep -n "^$" /etc/passwd 打印空行的所在行号
grep --color -E "\>([0-9]{1,3}\.{3})[0-9]{1,3}" 匹配ipv4地址
sed
sed是一个非交互式文本编辑器,它可以对文本文件和标准输入进行编辑,标准输入可以来自键盘输入,文本重定向,字符串,变量,甚至来自于管道的文本,与vim编辑器类似,它一次处理一行内容,sed可以编辑一个或多个文件
x 指定行号
x, y 指定从x到y的行号范围
例子
替换test.txt 中old为new
sed ‘s/old/new/g‘
awk
以上是关于linux 四剑客 find grepsedawk整理的主要内容,如果未能解决你的问题,请参考以下文章
提升工作效率1000%之Linux三剑客(grepsedawk)