Shell循环列出目录下所有文件或查找目录下包含指定字符串的文件
来源:互联网 发布:淘宝微淘的好处 编辑:程序博客网 时间:2024/06/02 10:18
一、循环列出目录下所有文件
#!/bin/bashfunction frfile(){ local basefolder=$1 echo $basefolder #local filename for filename in $(ls $basefolder) do local fullpathfile=$basefolder/$filename if [ -d $fullpathfile ] then echo ======dir====== ft=`ls $fullpathfile` if [ ! -z "$ft" ] then echo ==$fullpathfile not empty== frfile $fullpathfile else echo ==$fullpathfile empty== fi else echo $fullpathfile #cat -n $fullpathfile | grep found fi done return}basefolder=`dirname $0`echo "basefolder $basefolder"frfile $basefolder/$1
对于目录结构如下
# tree emptydiremptydir|-- bf 非空目录| `-- b.t|-- def`-- noted 非空目录 |-- abc `-- ed 空目录3 directories, 3 files
列出其文件为
# ./listfiles.sh emptydirbasefolder ../emptydir======dir========./emptydir/bf not empty==./emptydir/bf./emptydir/bf/b.t./emptydir/def======dir========./emptydir/noted not empty==./emptydir/noted./emptydir/noted/abc======dir========./emptydir/noted/ed empty==
二、查找目录下包含指定字符串的文件
#!/bin/bashsearchstring=$2function frfile(){ local basefolder=$1 #echo $basefolder for filename in $(ls $basefolder) do local fullpathfile=$basefolder/$filename if [ -d $fullpathfile ] then #echo ======dir====== ft=`ls $fullpathfile` if [ ! -z "$ft" ] then #echo ==$fullpathfile not empty== frfile $fullpathfile #else #echo ==$fullpathfile empty== fi else #echo $fullpathfile cat -n $fullpathfile | grep "$searchstring" if [ $? = 0 ] then echo $fullpathfile fi fi done return}basefolder=`dirname $0`#echo "basefolder $basefolder"if [ ! -d $basefolder/$1 ]then cat -n $basefolder/$1 | grep "$searchstring"else frfile $basefolder/$1fi
查找emptydir 目录下 包含字符串“found" 或 ”not found" 的文件并给出字符串在文件中的位置
# ./searchstr.sh emptydir "found" 1 not found 2 found./emptydir/bf/b.t# ./searchstr.sh emptydir "not found" 1 not found./emptydir/bf/b.t
注:b.t文件中共两行即
not found found
0 0
- Shell循环列出目录下所有文件或查找目录下包含指定字符串的文件
- javaFile循环列出指定目录下的所有文件(源代码)
- 列出目录下的所有文件或目录
- Linux查找当前目录及其子目录下所有包含指定字符串的文件
- 列出指定目录下的所有文件的绝对路径
- 递归列出指定目录下的所有文件的绝对路径
- 列出指定目录下的所有文件的路径
- [Linux C]列出指定目录下的所有文件(夹)
- 递归列出指定目录下所有的符号链接文件
- 递归列出指定目录下所有的普通文件
- 列出指定目录下后缀是.mp3的所有文件
- PHP遍历循环列出目录下所有的FLV文件
- 查找目录下所有文件中是否包含某个字符串
- python 文件和目录 当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件,并打印出相对路径。
- PYTHON 列出指定目录下的文件
- 列出指定目录下的文件
- java列出指定目录下的文件
- shell 删除指定目录下过时的文件或目录
- Java中的堆和栈的区别
- Xcode调试出现exc_bad_access错误
- 解决GridView动态设置宽高导致第一个item点击不响应或显示不正常问题
- 新秩序建立的痛苦性
- x210 DNW配置问题 win7系统
- Shell循环列出目录下所有文件或查找目录下包含指定字符串的文件
- Javascript+Canvas实现吸尘器模型
- LeetCode 刷题之二:寻找二叉树的最大深度
- Phoenix常见问题解答
- Android 在Eclipse中使用Ant Build构建项目时出现的"crunch"
- Unity3D学习之(高级查询和聚合函数)
- 第16周项目1-数组的排序
- stm32时钟分析
- LeetCode刷题之三:判断两个二叉树是否相同