Как я могу запустить sudo apt-get install, увидев процесс установки (долго в моем случае) и сохраняя его вывод в текстовый файл?
Вы можете использовать команду tee, чтобы выполнить это.
sudo apt-get install someapp 2>&1 | tee ~/someappInstall.txt
Посмотрите здесь для получения дополнительной информации или выполните man tee
Примечание: Как отмечали другие, 2>&1 необходимо перенаправить STDERR в STDOUT, чтобы уловить любые ошибки. См. . Загляните сюда для получения дополнительной информации для хорошего объяснения того, что на самом деле делает 2>&1.
tee выполнит работу по мере необходимости.
Чтобы записать вывод в файл, используйте:
sudo apt-get install your_software | tee log_file.txt
Это приведет только к отображению вывода, но не к сообщениям об ошибках. Если вы также хотите записать сообщения об ошибках, измените команду:
sudo apt-get install your_software 2>&1 | tee log_file.txt
Одна из красивейших apt-get (и APT в целом) заключается в том, что они хранят файлы журналов почти для всего, даже вывод терминала любой команды, которую вы запускаете, в /var/log/apt. Например, это последняя запись в моем /var/log/apt/term.log:
Log started: 2014-06-20 16:46:08
(Reading database ... 252472 files and directories currently installed.)
Removing xdotool (1:3.20130111.1-3.1) ...
Processing triggers for man-db (2.6.7.1-1) ...
Log ended: 2014-06-20 16:46:33
Теперь, сравнивая с фактическим выводом:
➜ ~ sudo apt-get remove xdotool
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libxdo3
Use 'apt-get autoremove' to remove it.
The following packages will be REMOVED:
xdotool
0 upgraded, 0 newly installed, 1 to remove and 2 not upgraded.
After this operation, 135 kB disk space will be freed.
Do you want to continue? [Y/n] y
(Reading database ... 252472 files and directories currently installed.)
Removing xdotool (1:3.20130111.1-3.1) ...
Processing triggers for man-db (2.6.7.1-1) ...
Он сохранил мне несколько строк, которые не являются в большинстве случаев, и это происходит автоматически. Таким образом, вам не нужна дополнительная команда для выполнения того, что вы хотите сделать, apt-get делает это для вас.
попробуйте команду tee. Вы можете найти здесь несколько примеров.
Простое использование:
<command> | tee file
пример:
sudo apt-get install whatYouWant | tee outputFile