持续更新Linux常用查找替换命令使用实例,包括各种find, sed, grep等
#搜索.log文件
find / -name ‘*.log’
#在log文件中查找关键词Abc
grep Abc /log
#查找替换log文件的Abc为123
sed ‘s/Abc/123/g’ log
#递归查找和替换
find . -type f -print0 | xargs -0 sed -i ‘s/原字符串/新字符串/g’
find . -name ‘*.html’ | xargs perl -pi -e ‘s/原字符串/新字符串/g’ #目录权限 chattr -i . / chattr -a .
sed -i ‘s/原字符串/新字符串/g’ `grep ‘原字符串’ -rl /查找目录/ –include “*.文件类型”`
#批量复制文件到所有子目录
find ./ -maxdepth 1 -type d -exec cp -r path/file {} \;
#批量删除A111文件夹
find . -type d -name A111 -exec rm -rf {} \;
find . -type d | grep A111$ | xargs rm -rf
#批量删除d111和d222文件夹
find . \( -name d111 -o -name d222 \) -type d -exec rm -fr "{}" \;
#find并统计数量
find . -type f -print | wc -l
#查找并批量删除空文件夹
find . -type d -empty -delete
#查找并批量删除所有.log文件
find . -name ‘*.log’ -type f -delete
#过滤111开头的结果
grep -v 111
#查找当前文件夹夹下的一级子目录中修改时间为 2022/2/22的abc.txt文件并删除
find . -maxdepth 2 -type f -name "abc.txt" -newermt '2022-02-22' | xagrs rm -rf