linux 文件夹下查找字符串

来源:互联网 发布:iphone照片导出到mac 编辑:程序博客网 时间:2024/05/17 08:02

说明如下:要在一个目录中,查找所有文件中包含的字符串AAA,找出文件,并用BBB进行替换掉。

#grep -r AAA ./                                 #表示在当前目录中递归查找包含AAA的文件。

#grep -rl AAA ./                                #只列出包含AAA字符串的文件名字。

#sed -i   's/AAA/BBB/g' filename                                   #针对一个文件作替换的命令: sed -i 's/AAA/BBB/g' filename.

sed -i 's/AAA/BBB/g' `grep -l AAA ./`(注意这里的``号,为~下边的那个符号)

若要使用vi进行单个文件的替换可用如下命令:

:1,$s/AAA/BBB/g                 #AAA是要替换掉的字符串用BBB来替换,1,代表从第一行起,g表示到最后。

 


1. set命令可以显示出当前shell下所有全局参量定义及其值;
2. 查找并删除当前目录下小文件:
find . -type f -size -10k -exec rm {} \;
说明:
-type f 查找文件
-size -10k,
小于10k的。"+"是表示要求系统只列出大于指定大小的文件,而使用"-"则表示要求系统列出小于指定大小的文件。
3. 遍历文件夹grep一个字符串
find . -name "*c" | xargs grep "strings"

在当前文件夹下所有c文件中查找字符串“string”

4. 在某目录下文件中查找某字符串
grep -r youcode dir
例如:查找home下文件中查找hello
grep -r hello /home

例如:在当前所有目录下文件中查找hello,不区分大小写
grep -ir hello .