下面的脚本,可以扫描给定的目录,然后扫描给定目录下的子目录下,所有包含特定文字(例如"phoneNumber")的特定类型文件(如*.json)然后输出文件名和对应的内容行。
get.sh
# 用法 get.sh .
for file in $1/*
do
# echo $file
if [ -d $file ]; then
len=`expr length $file`
if [ $len = 42 ]; then #如果目录名为40(参数为 .,所以每个$file会变成 ./xxxx文件名)
find $file -name "*.json" -print | xargs grep "\"phoneNumber\":\""
fi
fi
done