linux 获取指定目录最大深度(层数)02
脚本名:du_folder4.sh
脚本内容:
#!/bin/sh
folder_name="$1"
if [ ! -d "$folder_name" ];then
echo "The dir(\"${folder_name}\") does not exist!"
exit 3
fi
this_dir_tmp=`pwd`
# ./test(relative path) --->/home/whuang/du_study2/test
folder_name=`echo "$folder_name"|sed "s#^./#$this_dir_tmp/#g"`
# test(relative path) --->/home/whuang/du_study2/test
folder_name=`echo "$folder_name"|sed "s#^\([a-zA-Z]\+.*\)#$this_dir_tmp/\1#g"`
#----------------------------
depth_foler()
{
this_dir=`pwd`
source_folder="$1"
source_folder=`echo $source_folder |sed 's#/$##g'`
test_folder="$2"
cd $test_folder
count=0
while [ ! `pwd` = $source_folder ]
do
count=`expr $count + 1`
cd ..
done
cd $this_dir
return $count
}
target_folder="$folder_name"
depth_max=1
for i in `du "$target_folder"` ;do
if [ -d $i -a ! $i = $target_folder ];then
depth_foler "$target_folder" "$i"
retval=$?
if [ $depth_max -lt $retval ];then
depth_max=$retval
fi
fi
done
echo "max depth: $depth_max"
执行范例:
[root@localhost du_study2]# ./du_folder4.sh /home/whuang/du_study2/test
max depth: 3
[root@localhost du_study2]# ./du_folder4.sh ./test
max depth: 3
[root@localhost du_study2]# ./du_folder4.sh test
max depth: 3
[root@localhost du_study2]# du test
4 test/bbb/aaa/ccc
8 test/bbb/aaa
12 test/bbb
16 test
说明:可以使用du 命令 来验证脚本du_folder4.sh的正确性。
linux 获取指定目录最大深度(层数)02相关推荐
- linux怎么在目录下查找文件,linux find-在指定目录下查找文件
find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进 ...
- Python-读取文件例子:一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ....
转载自:http://blog.csdn.net/forandever/article/details/5711319 功能: 获取指定目录下面符合一定规则的文件名称和文件修改时间,并保存到指定的文件 ...
- php获取指定目录下所有文件列表,PHP 获取指定目录下所有文件(包含子目录)...
set DestPath=.for /f "delims=" %%i in ('dir /ad /b ' ) do (copy %DestPath%\%%i\*.txt %Dest ...
- 获取指定目录下的所有文件名
一.试题描述 获取指定目录(例如"E:/test")下的所有文件名 二.Java程序 import java.io.File; import java.util.ArrayList ...
- Android之获取指定目录下的所有特殊文件名字
1.获取指定目录下的所有特殊文件名字 比如我们在sdcard目录下的chenyu这个文件夹里面获取以so文件结尾的所有文件名 2.代码 public ArrayList<String> g ...
- linux 复制指定目录下的全部文件到另一个目录中,linux cp 文件夹
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. linux复制指定目录下的全部文件到另一个目录中 复制指定目录下的全部文件到另一个目录中 文件及目录 ...
- 获取指定目录下的所有文件名,包括子目录函数
获取指定目录下所有文件名,这是一个一个目录遍历的方法: function TPathWatch.FList(ASourFile: string): TStrings; // 查找子目录 AString ...
- TDirectory.GetParent获取指定目录的父目录
使用函数: System.IOUtils.TDirectory.GetParent class function GetParent(const Path: string): string; stat ...
- 【shell】shell下获取指定目录及子目录下的所有文件或指定文件
Date:2018.7.8 shell下获取指定目录下的所有文件或指定文件: 方法一: funtion getAllFilesfor files in `find $1 -name "*.t ...
- Python unittest利用discover获取指定目录或多级目录下的测试用例
最近在写接口自动化框架,由python+requests+unittest构建(其他还有些导入模块,这里暂且不说),目前还在搭建当中,整体其框架结构如下: 在编写Common下的RunTools组件( ...
最新文章
- RH442-3 队列技术
- Android 监听home键(android:launchMode=singleTask 与 onNewIntent(Intent intent) 的用法
- JAVA——System.in作为控制台输入时结束输入(输入EOF)解决方案
- Anaconda 完全入门指南
- laravel 淘宝 NPM 镜像
- GDB 命令详细解释
- ECMAScript6(17):Class类
- 培华学院2012届计算机专业多少人,西安培华学院学子在中国大学生计算机设计大赛中取得多个国奖...
- makefile中的wildcard和notdir和patsubst
- centos7.4下的KVM虚拟机安装使用
- SPSS中的数据分析—描述性统计分析【3】
- python爬取微博恶评_用python写网络爬虫-爬取新浪微博评论
- python猜字游戏算法设计_Python 制作一个猜字游戏
- bilibili老版本_bilibili网页版下载
- Scratch幻影小猫 电子学会图形化编程scratch等级考试三级真题答案2019-9
- ubuntu软件包降级命令_如何在Ubuntu上降级软件包
- Cortex-M0核芯片bootloader调试过程
- 干支纪年法简便算法_初中阶段常用的四种历史纪年法
- 183day(Lambda表达式了解)
- DA-DSUnet: Dual Attention-based Dense SU-net for automatic headand-neck tumor segmentation in MRI im