使用 Linux 命令循环执行来调整一组文件的大小。错误

使用 Linux 命令循环执行来调整一组文件的大小。错误

我创建了这个命令文件。目的是循环执行一堆文件并将其大小从 8MB 调整为 18MB。

此类文件包括rubbi8.txt,,,...rubbi9.txtrubbi9.txtrubbi18.txt

我的脚本是:

for i in {8..18}
do
  "truncate -s $im rubbi$i.txt"
done

结果是:

./kk3.sh: line 4: truncate -s  rubbi8.txt: command not found
./kk3.sh: line 4: truncate -s  rubbi9.txt: command not found
./kk3.sh: line 4: truncate -s  rubbi10.txt: command not found
./kk3.sh: line 4: truncate -s  rubbi11.txt: command not found

如何配置 truncate 命令的参数?

感谢 jvb。正确的命令格式是: --->


for i in {8..18}
do
truncate -s ${i}m rubbi${i}.txt
done


答案1

删除截断命令周围的引号,并使用花括号${i}来指示变量名的结束。

for i in {8..18}
do
  truncate -s ${i}m rubbi${i}.txt
done

答案2

引号将会使truncate -s rubbi8.txt(等等)命令名称- 带有空格和参数作为可执行文件名的一部分- 不存在。

相关内容