在bash上用大括号执行命令

时间:2014-05-20 16:15:37

标签: bash curly-brackets

我想知道为什么以下命令在Bash中不起作用以及如何使其运行:

/etc/init.d/{httpd,nscd} status

由于

2 个答案:

答案 0 :(得分:6)

您的命令不起作用,因为它执行:

/etc/init.d/httpd /etc/init.d/nscd status

实现目标的一种方法是使用循环:

for util in /etc/init.d/{httpd,nscd} ; do
  ${util} status
done

答案 1 :(得分:0)

这不起作用,因为它只扩展了路径。 试试这个。

$ echo  /etc/init.d/{httpd,nscd} status

$ /etc/init.d/httpd /etc/init.d/nscd status