【问题标题】:getting error ==>`newline or ;' unexpected得到错误==>`换行符或;'意外
【发布时间】:2020-09-14 15:02:29
【问题描述】:

我正在使用 ksh shell,在尝试组合命令时,出现以下错误。有什么解决方案吗?

sleep 10 &;echo no
ksh: syntax error: `newline or ;' unexpected

但是,当我删除“&”时它可以工作。但是根据我的要求,我需要运行第一个命令而不是等待它的输出并继续执行下一个命令。

【问题讨论】:

  • sleep 10 & 似乎很奇怪。这意味着一个单独的进程正在休眠,这对脚本的其余部分没有影响。
  • shellcheck 自动指出this 和其他常见的shell 脚本问题。

标签: linux shell unix ksh


【解决方案1】:

& 本身就是一个命令终止符,就像; 一样。通过同时使用这两种方法,您是在告诉 shell 在后台运行 sleep 10,然后运行“空命令”,然后运行 ​​echo no。但是,shell 不允许空命令。

你想要的是

sleep 10 & echo no

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-03
    相关资源
    最近更新 更多