【发布时间】:2014-06-16 11:09:39
【问题描述】:
我这里有一个脚本,这个脚本会列出当前工作目录中的所有目录,并创建子目录来制作目录树,但问题是它无法创建目录。
谁能帮我解决这个问题?该脚本必须在特定目录和子目录中创建目录
LIST=`ls -D`
for i in $LIST;
do
mkdir -p $i"/Dir3/Dir4/"
done
【问题讨论】:
我这里有一个脚本,这个脚本会列出当前工作目录中的所有目录,并创建子目录来制作目录树,但问题是它无法创建目录。
谁能帮我解决这个问题?该脚本必须在特定目录和子目录中创建目录
LIST=`ls -D`
for i in $LIST;
do
mkdir -p $i"/Dir3/Dir4/"
done
【问题讨论】:
这是“正确”遍历目录的一种方法:
for dir in */; do
# ^-- the trailing slash makes $dir expand to directories only
[ -d "${dir}" ] || continue
mkdir -p "${dir}/Dir3/Dir4/"
done
【讨论】:
LIST=`find . -maxdepth 1 -mindepth 1 -type d`
for i in $LIST;
do
mkdir -p $i/Dir3/Dir4
done
【讨论】:
find . -maxdepth 1 -mindepth 1 -type d 表示查找当前文件夹下的所有目录,并保存在 LIST 变量中。其次,迭代所有目录,以及 mkdir 子目录。
find /var替换find .
你会问这样的问题吗?
find * -type d -exec mkdir -p /var/abc/{} \;
它将从当前文件夹中获取目录和子目录,并在/var/abc下创建新的相同文件夹
【讨论】: