【发布时间】:2018-04-26 07:12:03
【问题描述】:
嗨,我想在我的 linux bash 作业上获得一些帮助。 我必须制作一个脚本来获取目录并返回最深子目录的深度(每个目录+1)。 我必须递归地做。 我必须使用“list_dirs.sh”来获取病毒目录并回显其子目录。
这就是我目前得到的:
dir=$1
sub=`source list_dirs.sh`
((depth++))
for i in $sub
do
if [ -n "$sub" ] ; then
./depthScript $dir/$i
fi
done
if ((depth > max)) ; then
max=$depth
echo $max
fi
在使用假设返回 3 的目录进行测试后,我得到了安装:
1
1
1
1
似乎我的深度计数器忘记了以前的值,我得到了输出 每个目录..需要一些帮助!
【问题讨论】:
-
您可以将其作为参数传递给脚本,而不是全局变量。
-
但是为什么在我的脚本中深度被认为是局部的而不是全局的?它是如何工作的?我认为我不允许以任何方式更改仅 dir 的脚本的输入