これはbashスクリプトを実行したときの出力例です - >https://i.stack.imgur.com/KfUBk.jpg。
私の質問は、これをどのように作成できるか、またはどのコードを使用できるかです。
答え1
for dir in a a/b a/b/c a/b/c/d; do
mkdir "$dir" && touch "$dir/${dir##*/}"{1..100}
done
つまり、作成したいディレクトリ名と各ディレクトリについて繰り返します。
- それを作り、
- その中に空のファイルを作成します。
${dir##*/}
にあるディレクトリのデフォルト名に拡張されます$dir
(例c
: $dir
is ) a/b/c
。中括弧の拡張something{1..100}
はに拡張されますsomething1 something2 ... something100
。
任意の深さに拡張しやすい変形:
dir=''
for dirname in a b c d; do
dir="${dir:-.}/$dirname"
mkdir "$dir" && touch "$dir/${dir##*/}"{1..100}
done
ここで設定されていないか空の場合は、${dir:-.}
最初の反復に表示されます。これは最初に構築された次のことを意味します。.
$dir
$dir
./a
./a/b
たとえば、次のようなより多くのサブディレクトリが必要な場合z
:
dir=''
for dirname in {a..z}; do
dir="${dir:-.}/$dirname"
mkdir "$dir" && touch "$dir/${dir##*/}"{1..100}
done