说,我有这棵树,我想执行ruby
该文件夹中的所有脚本。我怎样才能通过存档一行命令。
./
../
rb-script/
sample1.rb
sample2.rb
答案1
类似的东西(取决于你的外壳)
for file in rb-script/*.rb; do ruby "$file"; done
应该可以解决问题;或者(我认为与 shell 无关)
find rb-script -type f -exec ruby "{}" \;
使用find
;根据您的情况,您可以更具体,à la
find rb-script -maxdepth 1 -type f -name '*.rb' -exec ruby "{}" \;
一般来说,如果接受多个文件(并且文件数量少于 shell 的命令行参数最大值),command <glob-pattern>
也可以工作,但我怀疑是否会这样做。 (不过,您可以编写一个包装脚本来执行您想要的操作。)command
ruby
ruby-wrapper rb-script/*.rb
答案2
如果这是守护进程的一部分,您可以使用运行部件命令按字母顺序执行文件夹中的所有内容。如果您需要以相反的顺序执行关闭命令,则此命令特别有用。