在多个目录中创建文件

时间:2015-11-15 17:11:23

标签: bash unix

是否可以一次/在一个命令中创建多个directirories中的文件? 我正在做这样的事情

Add 

    -add1
         - file 1
         - file 2
    -add2
         - file 1
         - file 2

我用

创建目录
mkdir -p Add/add{1,2}

但无法弄清楚如何在每个子目录中创建文件,而无需手动交换到目录并在那里创建文件。

2 个答案:

答案 0 :(得分:5)

您可以使用相同的技术:

touch Add/add{1,2}/file{1,2}

使用set -x,您会看到它已扩展为:

touch Add/add1/file1 Add/add1/file2 Add/add2/file1 Add/add2/file2

答案 1 :(得分:0)

如果你的Unix shell是Bash:

,你可以使用for循环
$ for dir in add1 add2; do mkdir -vp $dir; for file in file1 file2; do echo creating $dir/$file; touch $dir/$file; done; done

这会产生此输出:

mkdir: created directory ‘add1’
creating add1/file1
creating add1/file2
mkdir: created directory ‘add2’
creating add2/file1
creating add2/file2
相关问题