如何创建从1到n的目录?

如何创建从1到n的目录?

在我的场景中,我有一些照片,我想将它们分开。目前我正在做mkdir gallery1 gallery2 gallery3 gallery4 gallery5 gallery6,但这很痛苦。我认为我们可以更容易地做到这一点。假设我想创建目录画廊7画廊50。我该怎么做呢?

答案1

带支撑扩张。

mkdir gallery{1..50}

答案2

虽然已经有了很好的答案,而且你已经开始了,但无论如何我都会把我的答案放进去。

我总是喜欢制作带有前导零的数字序列文件,如下所示:

mkdir $(printf "gallery%02d\n" {1..50})

这将为您提供gallery01通过gallery50.这有助于在排序时使它们保持良好的对齐和正确的顺序。

答案3

正如已经提到的大括号扩展seq并非所有 shell 都支持您也可以使用coreutils

for i in $(seq -w 1 50)
do
    mkdir "gallery$i"
done

选项-w适用于等宽,即创建画廊01,画廊02ETC。

答案4

首先尝试一下,它将解决什么问题:

seq -f 'mkdir gallery%g' 50

在将输出通过管道传输到 shell 之前:

seq -f 'mkdir gallery%g' 50 | sh

这将创建以零开头的文件夹:

seq -f 'mkdir gallery%02g' 50 | sh

相关内容