Nice

為什麼我不能“nice”一個命令組?

  • August 10, 2018
[fakename]$ nice yes a>/dev/null &
[1] 26475
[fakename]$ ps -p 26475 -o nice,pid
NI   PID
10 26475
[fakename]$ nice { yes a>/dev/null; } &
-bash: syntax error near unexpected token `}'

有沒有辦法建立nice一個命令組?

我知道一個:正常執行命令組,通過附加一個&符號將其置於後台,並renice在命令組上使用。但是,有沒有辦法用 完成同樣的事情nice

另外,為什麼它會給我這個錯誤?是不是因為nice不是 shell 關鍵字,因此必須遵循標準的 bash 參數解析規則?

您喜歡使用的方式nice需要它nice是 shell 中的保留字,但它只是一個普通命令,它將另一個簡單命令作為參數。

只有在幾個砲彈做你喜歡看到的事情的情況下。這是time在某些 shell 中也作為保留字存在的命令。

nice實用程序將另一個實用程序(可能帶有參數)作為其操作數。它不需要子shell 或複合命令。

要使用 執行複合命令nice,請使用子 shell:

nice sh -c 'mycommand; somethingelse; while [ something ]; do ...; done'

也可以看看:

引用自:https://unix.stackexchange.com/questions/461835