Linux

為 linux 上的程序設置預設的 nice 值

  • September 5, 2015

看起來很奇怪,我找不到如何為程序設置預設的 nice 值的資訊(而不是為使用者或組!)。我想以 10 的好值啟動所有 chrome 和 firefox 實例。最合適的解決方案是什麼?

與其讓你的每次更新都搞砸了/usr/bin,不如使用~/.local/bin?

## one-time setup
mkdir -p ~/.local/bin
# prepend new path to PATH to give it priority
echo 'PATH=$HOME/.local/bin:$PATH' >> ~/.bashrc
# then open new terminal or
source ~/.bashrc

## create a wrapper script
# $@ is there to passthrough args.
echo 'nice -10' `which firefox` '$@' > ~/.local/bin/firefox
# make it executable
chmod +x ~/.local/bin/firefox

# check sanity
which firefox
cat `which firefox`

你必須解決一些問題。

首先獲取firefox二進製文件的完整路徑:

which firefox
/usr/bin/firefox

現在,將其移至例如 firefox-original:

mv /usr/bin/firefox /usr/bin/firefox-original

現在,創建一個名為的小處理程序腳本/usr/bin/firefox,它將被呼叫而不是原始的 firefox 二進製文件:

cat /usr/bin/firefox
#!/bin/bash

exec nice - n 10 /usr/bin/firefox-original "$@"

最後使腳本可執行:

chmod 755 /usr/bin/firefox

現在,每次啟動 firefox 時,該腳本都會以 10 的好值執行二進製文件。這$@意味著將腳本的所有參數傳遞給二進製文件。

引用自:https://serverfault.com/questions/683405