1,查看某个文件是不是包含数据
#查找当前目录下所有包含'check'词的文件
grep 'check' *
#查找当前目录下所有包含'check'词的以py结尾的文件
grep 'check' *py
#查找当前目录下所有包含'check'词的以down开头的文件
grep 'check' down*
就是可以通过配合linux自身的通配符来缩小查找文件来加快查找速度,linux常用的通配符
$ #以。。。结尾(正则)
^ #以。。。开头(正则)
* #匹配全部字符,通配符
? #任意一个字符,通配符
2,查找文件
#查找code文件夹及其子文件夹中包含'check'的文件
grep -r 'check' code/
#查找当前目录及其子目录包含'check'的文件
grep -r 'check' *
#查找当前目录下除了online_hotword文件夹,包含'check'的文件
grep -r 'check' * --exclude-dir online_hotword
#查找当前目录下及其子目录下除了dddff文件,包含'check'的文件
grep -r 'sp_new' * --exclude dddff
遍历当前目录以及子目录中所有以结尾的文件
#便捷但是效率很低,是先遍历全部文件再挑选出相应的
grep -r 'split' * | grep py
#速度快,但是不便捷需要一步步的逐层遍历数据
grep 'split' *py
grep 'split' */*py
grep 'split' */*/*py
#使用find、xargs来配和,先找出所有文件,然后再grep,
find -name "*.py" | xargs grep --color=auto "split"
#更有效的一种方法,如查找包含‘pandas’的py文件,但是不遍历generate文件夹的
grep -R --include='*py' --exclude-dir='generate' 'pandas'