Я новый пользователь Ubuntu ...
Положить & amp; и, в конце концов, приложение помещается в фоновый режим, но не совсем, оно все равно дает мне вывод сценария perl в моей командной строке, даже если он работает в фоновом режиме. Так что это становится бесполезным, так как мне приходится ждать завершения полного сценария.
Например:
output of perl..
..
..
Done.
Так что мне все еще нужно дождаться выполнения сценария perl, есть ли способ, как можно заставить сценарии такого типа работать в фоновом режиме, чтобы я не придется ждать?
Я уже пробовал следующее:
command > test.txt //This generated emptyfile test.txt and all the output is still on command line instead of test.txt
command > /dev/null
command < /dev/null
Ни один из них не был успешным.
Пожалуйста, не предлагайте открывать новую консоль командной строки, выполнив CTRL + SHIFT + T или CTRL + ALT + T, потому что я не хочу этого делать, я хочу запустить скрипт perl в фоновом режиме, выполняя некоторую работу.
Для других сценариев Perl & amp; работает нормально, но для этого, нет, есть ли какой-нибудь способ?
Редактировать: Получил решение благодаря John1024 и Фолькеру Зигелю.
команда 2> / dev / null &
Команды могут произвести вывод на stdout или stderr. Команды, которые Вы попробовали перенаправленный только stdout. Под bash
, можно перенаправить вывод от обоих потоков сразу с помощью:
command &>test.txt &
Или
command &>/dev/null &
при использовании оболочки POSIX, тогда необходимо сделать перенаправление на шагах:
command >test.txt 2>&1 &
>test.txt
перенаправления stdout в файл test.txt
. Поскольку stderr является дескриптором файла 2
, эффект 2>&1
состоит в том, чтобы перенаправить stderr к тому, везде, куда stdout, обозначенный &1
, в настоящее время идет.
Похоже, что вывод идет в поток сообщений об ошибках, stderr - так перенаправление что вместо stdout:
command 2> errors.txt
Или перенаправление оба вместе в тот же файл:
command > errors.txt 2>&1
В случае, если Вы хотите знать, все это - "вскакивает в кроличью нору" - видят , Проиллюстрированное Учебное руководство
по Перенаправлению Видит также nohup
- полезно, если Вы хотите сохранить команду, бегущую за закрытием терминала:
nohup command
(man nohup
для деталей)