Установка значения по умолчанию для программы в Linux

Как ни странно, я не могу найти информацию о том, как я могу установить красивое значение по умолчанию для программы (не для пользователя или группы!). Я хотел бы запустить все экземпляры Chrome и Firefox с хорошим значением 10. Какое решение будет наиболее подходящим?

3 ответа

Решение

Вместо того, чтобы испортить свой /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. $@ просто означает передать все аргументы скрипта в двоичный файл.

Создайте сочетание клавиш, которое будет выполнять следующую команду:

nohup firefox & renice +15 $(pgrep firefox)

Это должно работать независимо от того, обновляете ли вы.

Другие вопросы по тегам