我有一个简单的问题。我只是想知道它是否是有效的格式(使用bash shell脚本)来为文件名中的循环设置一个计数器。我想的是:
for((i=1; i <=12; i++))
do
STUFF
make a file(i).txt
答案 0 :(得分:9)
这是一个快速演示。 touch
命令更新文件的最后修改时间,如果不存在则创建它。
for ((i=1; i<=12; i++)); do
filename="file$i.txt"
touch "$filename"
done
您可能希望在$i
只有一位数的情况下添加前导零:
for ((i=1; i<=12; i++)); do
filename="$(printf "file%02d.txt" "$i")"
touch "$filename"
done
这将导致file01.txt
,file02.txt
等,而不是file1.txt
,file2.txt
。
答案 1 :(得分:5)
如果你只想制作一堆文件并且不需要其他任何循环,你可以完全跳过循环:
touch file{1..12}.txt
将在一个命令中完成所有操作。
如果你有Bash 4,你可以得到这样的前导零:
touch file{01..12}.txt