Ubuntu,使用shell脚本循环C程序

Ubuntu,使用shell脚本循环C程序

./myProgram 1我在目录中有一个 C 程序(其中 1 是固定参数)

gianni@mylinux:~/myWork/myApplication$ ./myProgram

我希望使用循环运行这个 C 程序 100 次,插入一个非常不优雅的解决方案来复制gianni@mylinux:~/myWork/myApplication$ ./myProgramshell 脚本中的行 100 次

答案1

在命令行中写入:

i=0; while [ $((i+=1)) -le 100 ]; do ./myProgram 1; done

假设您的 IFS 中没有数字,或者只是引用为“$((i+=1))”

或者(使用 ksh、bash、zsh)

for i in {1..100}; do ./myProgram 1; done

答案2

使用以下脚本可以轻松完成此操作:

#!/bin/sh
for i in $(seq 1 100); do
  ./myProgram 1
done

或者使用单行版本:

for i in $(seq 1 100); do ./myProgram 1; done

答案3

zsh外壳中:

repeat 100 do ./myProgram 1; done

或者

repeat 100 do
    ./myProgram 1
done

repeat循环具有以下通用形式:

repeat word do list done

whereword被扩展并被视为算术表达式,它告诉 shell 要运行多少次迭代,wherelist是每次迭代中应运行的命令列表(命令列表始终由命令终止符终止,例如;或换行符)。

bash

zsh -c 'repeat 100 do ./myProgram 1; done'

相关内容