N
たとえば、コピーを作成してa.txt
番号を付けるにはa1.txt
、a2.txt
などa3.txt
...
どうすればこのようなことを簡潔にすることができますか?
答え1
cp
それ自体は一度に1つのコピー(単一ファイル)のみを作成しますが、高速ループを使用するとそれほど難しくありません。
for i in {1..10}; do cp a.txt a$i.txt; done
答え2
bash変数にN個の値があるとします。
for i in `seq 1 $N`; do cp a.txt a$i.txt; done
または
for ((i=1;i<=$N;i++)); do cp a.txt a$i.txt; done
または、Kevinの答えに示されているループを使用してください。
答え3
使用されるソリューションは、コピーを作成するためにcp
ファイルを同時に読み取る必要がないため、やや非効率的です。利用可能:N
N
tee
cat a.txt | ( for i in `seq 1 $N`; do echo a"$i".txt; done | xargs tee )
答え4
もっとファンキーなものが必要な場合は、次のようにできます
for t in $(seq --format="funky-%03.0f-numbered.txt" 25 3 40); do cp orig $t; done
。