10

我在我的 Centos5 机器上运行了这个:

ls -al & ; ls -al

我期待它ls -al在后台运行,并ls -al在前台同时运行,并演示如何通过这样做来破坏终端的输出。

但是,我得到:

-bash:意外标记';'附近的语法错误

如何将这两个命令写在同一行?

4

1 回答 1

25

不直观地,&是命令分隔符和分叉器。这意味着您实际上有三个命令:

  ls -al & ; ls -al
# ^^^^^^^|^|^^^^^^^

...而且 Bash 不支持空语句。

相反,只需编写:

  ls -al & ls -al

没有分号。

于 2013-02-07T14:29:57.520 回答