脚本名: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相关推荐

  1. linux怎么在目录下查找文件,linux find-在指定目录下查找文件

    find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录和文件全部进 ...

  2. Python-读取文件例子:一个获取指定目录下一定格式的文件名称和文件修改时间并保存为文件的python脚本 ....

    转载自:http://blog.csdn.net/forandever/article/details/5711319 功能: 获取指定目录下面符合一定规则的文件名称和文件修改时间,并保存到指定的文件 ...

  3. php获取指定目录下所有文件列表,PHP 获取指定目录下所有文件(包含子目录)...

    set DestPath=.for /f "delims=" %%i in ('dir /ad /b ' ) do (copy %DestPath%\%%i\*.txt %Dest ...

  4. 获取指定目录下的所有文件名

    一.试题描述 获取指定目录(例如"E:/test")下的所有文件名 二.Java程序 import java.io.File; import java.util.ArrayList ...

  5. Android之获取指定目录下的所有特殊文件名字

    1.获取指定目录下的所有特殊文件名字 比如我们在sdcard目录下的chenyu这个文件夹里面获取以so文件结尾的所有文件名 2.代码 public ArrayList<String> g ...

  6. linux 复制指定目录下的全部文件到另一个目录中,linux cp 文件夹

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. linux复制指定目录下的全部文件到另一个目录中 复制指定目录下的全部文件到另一个目录中 文件及目录 ...

  7. 获取指定目录下的所有文件名,包括子目录函数

    获取指定目录下所有文件名,这是一个一个目录遍历的方法: function TPathWatch.FList(ASourFile: string): TStrings; // 查找子目录 AString ...

  8. TDirectory.GetParent获取指定目录的父目录

    使用函数: System.IOUtils.TDirectory.GetParent class function GetParent(const Path: string): string; stat ...

  9. 【shell】shell下获取指定目录及子目录下的所有文件或指定文件

    Date:2018.7.8 shell下获取指定目录下的所有文件或指定文件: 方法一: funtion getAllFilesfor files in `find $1 -name "*.t ...

  10. Python unittest利用discover获取指定目录或多级目录下的测试用例

    最近在写接口自动化框架,由python+requests+unittest构建(其他还有些导入模块,这里暂且不说),目前还在搭建当中,整体其框架结构如下: 在编写Common下的RunTools组件( ...

最新文章

  1. RH442-3 队列技术
  2. Android 监听home键(android:launchMode=singleTask 与 onNewIntent(Intent intent) 的用法
  3. JAVA——System.in作为控制台输入时结束输入(输入EOF)解决方案
  4. Anaconda 完全入门指南
  5. laravel 淘宝 NPM 镜像
  6. GDB 命令详细解释
  7. ECMAScript6(17):Class类
  8. 培华学院2012届计算机专业多少人,西安培华学院学子在中国大学生计算机设计大赛中取得多个国奖...
  9. makefile中的wildcard和notdir和patsubst
  10. centos7.4下的KVM虚拟机安装使用
  11. SPSS中的数据分析—描述性统计分析【3】
  12. python爬取微博恶评_用python写网络爬虫-爬取新浪微博评论
  13. python猜字游戏算法设计_Python 制作一个猜字游戏
  14. bilibili老版本_bilibili网页版下载
  15. Scratch幻影小猫 电子学会图形化编程scratch等级考试三级真题答案2019-9
  16. ubuntu软件包降级命令_如何在Ubuntu上降级软件包
  17. Cortex-M0核芯片bootloader调试过程
  18. 干支纪年法简便算法_初中阶段常用的四种历史纪年法
  19. 183day(Lambda表达式了解)
  20. DA-DSUnet: Dual Attention-based Dense SU-net for automatic headand-neck tumor segmentation in MRI im

热门文章

  1. Liunx 常用命令
  2. 关于技术问题的请教和解决步骤
  3. sharepoint 在Visual Studio设置其他页面的加载标签
  4. 【bzoj2588/P2633】count on a tree —— LCA + 主席树
  5. Qt 2D绘图之一:基本图形绘制和渐变填充
  6. 第4章 类与对象 枚举类
  7. PKIX path building failed
  8. [Bzoj3233][Ahoi2013]找硬币[基础DP]
  9. Jmeter学习(一)
  10. Linux从用户层到内核层系列 - GNU系列之glibc介绍