shell查找特定文件

shell
查找文件的代码,一个查找当前路径的,一个查找可多的,呵呵。
1
#!/bin/bash
#简化版的查找.c文件的shell脚本

#寻找.c文件的函数(function )
findcfile()
{
#找到以.c结尾的文件,文件名列表存放在变量cfilelist里边
cfilelist= ( l s ∣ g r e p ′ . c (ls | grep ‘.c (lsgrep.c’)
#通过for循环显示文件路径以及文件名
for cfilename in $cfilelist
do
echo ( p w d ) / (pwd)/ (pwd)/cfilename
done
}

#调用函数实现查找
echo “当前路径下的.c文件有:”
findcfile
2
#!/bin/bash
#完整版的查找.c文件的shell脚本,可以进入文件夹

#判断通过参数传递的文件夹是否存在,是否为空
if [[ -z $1 ]] || [[ ! -e KaTeX parse error: Expected ‘EOF’, got ‘#’ at position 11: 1 ]] then #̲如果没有传递文件夹,就在当前目…(pwd)
echo “当前所在路径是:”
echo $newdir
echo “这个路径下.c文件有:”
else
#如果传递的有文件夹,进入传递的文件夹,开始寻找
cd 1 n e w d i r = 1 newdir= 1newdir=(pwd)
echo “当前所在路径是:”
echo $newdir
echo “这个路径下.c文件有:”
fi

#递归寻找.c文件的函数
findcfile()
{
#找到以.c结尾的文件,文件名列表放存在变量cfilelist里边
cfilelist= ( l s ∣ g r e p ′ . c (ls | grep ‘.c (lsgrep.c’)
#通过for循环显示文件路径以及文件名
for cfilename in $cfilelist
do
echo ( p w d ) / (pwd)/ (pwd)/cfilename
done
#遍历该目录,当判断其为目录的时候,进入目录,调用该函数,实现递归
dirlist=$(ls)
for dirname in $dirlist
do
if [ -d $dirname ]
then
cd $dirname
findcfile
cd …
fi
done
}

#调用递归函数实现查找
findcfile

    原文作者:不会焊板子的软件工程狮
    原文地址: https://blog.csdn.net/weixin_44983369/article/details/108132970
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞