Я ищу способ сделать aptitude(1) тихим при установке пакетов. Я хочу, чтобы он выводил данные только при явных ошибках. Опция -q делает это в большинстве других программ, но, очевидно, не в aptitude.

Моя цель - сказать:

someprogram: You need to install the foobar package for this to work.

$ sudo aptitude install foobar -yq &

И не иметь экран, заполненный текстом. Я знаю о > /dev/null , но это кажется уродливым способом сделать то, что я чувствую, должно быть очень распространенной задачей.

1 ответ1

3

> /dev/null на самом деле является стандартным способом закрытия программ.

Перенаправление вывода (в файл или в разрядный блок) действительно является распространенной задачей, поэтому односимвольный оператор > был введен в оболочках Unix. (В предшествующем Multics нужно было выполнить отдельную iocall attach ... до и после, чтобы установить и удалить перенаправления.)

Еще одна особенность оболочек Unix для выполнения общих задач - это скрипты и функции. Если вы просто хотите сократить команду, используйте:

inst() { sudo aptitude install "$@" -yq > /dev/null & }

что позволит вам установить вещи с inst package .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .