Видимо, я не знаю всех выходных пунктов назначения, которые доступны для использования. Я знаю о stdout( &1) и stderr( &2). Однако, после перенаправления обоих дескрипторов, я иногда все еще получаю некоторый вывод в моей консоли!
Самый простой пример, который я могу вспомнить - это GNU Parallel; Каждый раз, когда я его использую, я вижу уведомление о цитировании. Даже когда я это делаю &2>1 > file, я все равно вижу уведомление.
emergeТо же самое относится и к : когда я запускаю emerge и возникают некоторые проблемы, некоторые данные не печатаются stdoutни на stdin, так как я перенаправляю их, и они все еще проходят.
Я в основном решаю эти проблемы с помощью script, но мне все еще интересно, что вызывает эту проблему.
/dev/tty.
parallel: mkdir ~/.parallel; touch ~/.parallel/will-citeотключит раздражающее сообщение. В качестве альтернативы, посмотрите на другие реализации parallel.
parallelв качестве примера.