我正在尝试创建一系列相同的目录,其名称如“file001”,顺序从 1 到 512。我在 shell 中运行以下命令:
for i in $(seq 001 512):
do
mkdir file$i
done
虽然这创建了所有 512 个目录,但它们被标记为“file1”、“file2”...而不是“file001”、“file002”等。任何人都可以建议其他方式按照我需要的方式创建文件夹吗?
答案1
试试这个:
mkdir file{001..512}
答案2
使用
for num in $(seq -w 001 512); do
mkdir "file$num"
done
或者,对于bash
4.0 或更高版本(即不是bash
macOS 上的默认版本),
mkdir file{001..512}
对于较旧的bash
ifseq
不可用:
for num in {1..512}; do
mkdir "file$( printf '%03d' "$num" )"
done
答案3
不需要for循环。尝试这个 :
mkdir `echo file{001..512}`
正如评论中指出的:
不需要命令替换和回显。
所以,支撑扩张足以完成任务:
mkdir file{001..512}