C程序在多个目录中编译时有延迟

C程序在多个目录中编译时有延迟,c,linux,bash,compilation,C,Linux,Bash,Compilation,我的目录名为0001_1000_solar,0002_1000_solar。。。1000_1000_太阳能。我想去每个目录,编译一个C程序,暂停一秒钟,然后移动到另一个目录,做同样的事情 我在终端上写了类似的东西,但它不起作用: 对于{0001..1000}中的num;做 cd $num_1000_solar gcc singl.c binary.c -lm sleep 1 cd .. 完成 它将我从当前目录带到我的用户目录。。。有什么想法吗 干杯 我认为$num_10

我的目录名为0001_1000_solar,0002_1000_solar。。。1000_1000_太阳能。我想去每个目录,编译一个C程序,暂停一秒钟,然后移动到另一个目录,做同样的事情

我在终端上写了类似的东西,但它不起作用:

对于{0001..1000}中的num;做

   cd $num_1000_solar
   gcc singl.c binary.c -lm
   sleep 1
   cd ..
完成

它将我从当前目录带到我的用户目录。。。有什么想法吗

干杯

我认为$num_1000_solar是个问题。只有$num具有指定的值

它应该是cd{$num}\u 1000\u solar

在当前情况下,$num_1000_solar是一个未定义的变量,因此为空。因此,该命令变成了cd,它会将您带到主目录

编辑

答案已更新。 多亏了redimp和Klas的建议。

我建议使用cd${num}\u 1000\u solar。我经常在变量名cd${num}\u 1000\u solar周围使用{}。我觉得这种语法更具可读性,但这是我个人的偏好。