Как перенаправить вывод запущенной программы в / dev / null

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

 chromium-browser 2> /dev/null & 

Однако, если я случайно забуду об ошибках и типах сообщений

 chromium-browser & 

(что очень раздражает, когда они появляются в середине команды). Я не знаю, что делать, кроме как остановить приложение и снова запустить его правильно.

Могу ли я каким-либо образом перенаправить вывод ошибки без перезапуска приложения?

  • Перенаправление после запуска процесса
  • Почему выход не перенаправляется в файл?
  • является ли Linux перенаправлением «>>» медленнее с большими файлами?
  • Захват вывода без перенаправления и оставьте его на терминале тоже
  • Как отправить надстройку stdout в multilog и второй процесс
  • Почему некоторые linux-инструменты записывают в STDERR вместо STDOUT по умолчанию?
  • io перенаправление на «крест» 2 программы
  • Как вы помните синтаксис для перенаправления 2> и 1
  • 3 Solutions collect form web for “Как перенаправить вывод запущенной программы в / dev / null”

    Вы также можете запустить браузер с nohup, а затем закрыть окно терминала следующим образом:

     nohup chromium-browser & 

    Таким образом, браузер запустится и отсоединится от консоли, которая затем может быть закрыта тихо.

    На это был дан ответ: здесь владр . Ответ (цитирование):

    • присоедините к рассматриваемому процессу с помощью gdb и запустите:
    • p dup2 (open ("/ dev / null", 0), 1) (для перенаправления stdout)
    • p dup2 (open ("/ dev / null", 0), 2) (для перенаправления stderr)
    • отрывать
    • уволиться

    Я попробовал его по следующему сценарию:

    [выпуск после первого комментария:]

      sleep 10 #, поэтому у меня может быть время для присоединения к процессу
     если ["$ sonorphather" == "отец"] # избегать бесконечной рекурсии 
     тогда 
        sonorfather = son ./test & 
     фи 
    
     тогда как true 
     делать 
        эхо "stdout $ sonorfather" 
        эхо "stderr $ sonorfather"> & 2 
        спать 1 
     сделанный 
    

    Я отключил вывод stderr до того, как был создан процесс son, вот результат:

     отец 
     сын 
     отец 
     сын 
     [и так далее...]. 
    

    Надеюсь, это ответит на ваш вопрос: также был перенаправлен процесс обработки сына.

    Вы также можете настроить псевдоним для chromium-browser вместо этого запустите chromium-browser 2> /dev/null

    например, если вы используете bash, отредактируйте /home/username/.bashrc и добавьте строку:

     chromium-browser='chromium-browser 2> /dev/null' 

    или еще лучше

     chrome='chromium-browser 2> /dev/null' 

    и сохраните несколько нажатий клавиш.

    Interesting Posts

    Проблема ldconfig с нестандартным каталогом lib в CentOS

    Как просматривать файлы, скрытые на mount на Debian 6

    Каковы происхождение rgb.txt?

    Как изменить линию консоли консоли Linux (на некоторое время)

    Попытка отправить несколько текстовых вложений через почтовое сообщение

    Невозможно подключиться к некоторым WiFis, Linux на Macbook Pro

    Bash автоматически перезагружает (впрыскивает) обновления в исполняемый скрипт при его сохранении: Почему? Любое практическое применение?

    crontab error (без установки MTA), но я использую> / dev / null 2> & 1

    Шифровать файлы с помощью gpg (и их симметричного шифрования ключа) – это нормально делать в мире * nix?

    Туннелирование нескольких портов через один порт

    Какие приложения для редактирования видео доступны в Linux?

    top: как отменить текущую команду?

    Приложение Qt серое на OpenBox при запуске с autostart.sh

    как удалить ctrl F в файле unix

    обмена или синхронизации истории между Zsh и Bash

    Linux и Unix - лучшая ОС в мире.