linux之find、sed命令用法,以及find+for组合命令

1.批量打包文件

[root@localhost ~]# find . -name "xin*" -name "*.txt" ! -name xin.txt -mtime -15 -size -3M | xargs tar -czf all.tar.gz

[root@localhost ~]# find . -name "xin*" -name "*.txt" ! -name xin.txt -mtime -15 -size -3M | xargs tar -czf all.tar.gz

 2.查看打包文件中的内容

tar -tf all.tar.gz

 以下命令也可打包

[root@localhost ~]# tar -czf all2.tar.gz `find . -name "xin*" -name "*.txt" ! -name xin.txt -mtime -15 -size -3M`

[root@localhost ~]# tar -czf all2.tar.gz `find . -name "xin*" -name "*.txt" ! -name xin.txt -mtime -15 -size -3M`

for循环,进行打包

for i in $(find . -name "access*" -name "*.log" ! -name access.log -mtime -15 -size +3M); do tar -czf all1.tar.gz $i ; done

替换命令,vim中加%,sed命令不需要加%

:%s/baidu/xin2/g;

 

 %s表示替换查找,/baidu寻找文件中的baidu字段,/xin2表示替换为xin2,/g时替换命令

sed命令,非交互模式替换文件中的字词,sed命令工作原理,在处理文本时把当前处理的行存储在临时缓冲区中,成为模式空间,紧接着用sed命令处理缓冲区中的内容,处理完成后把缓冲区的内容输出至屏幕或者写入文件,

以下命令表示测试在控制台打出结果,加上-i表示修改源文件

sed s/xin2/baidu/g list1.txt

加上-i后 

 将passwd文件中的前5行内容写入生成的今天日期的文件中.txt

将文件中的adm替换为admin

 替换第二次出现的sbin字段

sed 's/sbin/bin/2' 2024-09-03.txt

 替换第三行出现的sbin

sed '3s/sbin/bin/g' 2024-09-03.txt 

 替换第2,4行的sbin

打印第一行内容,加n表示静默显示其他行内容,如果不加-n则打印所有内容

 打印第一行到第四行内容

 打印第一行和第四行内容

删除第一行内容

 删除1-3行内容

删除最后一行

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值