Я не впевнений, ви намагаєтесь приховати STDERR або перенаправити його на STDOUT.
Щоб перенаправити STDOUT у файл:
pkg_add emacs-23.4,2.tbz > stdout.log
Щоб перенаправити STDOUT та STDERR у файл:
pkg_add emacs-23.4,2.tbz > & stdxxx.log
Щоб перенаправити STDOUT у файл та сховати STDERR:
( pkg_add emacs-23.4,2.tbz > stdout.log ) > & /dev/null
Щоб перенаправити STDOUT на консоль та приховати STDERR:
( pkg_add emacs-23.4,2.tbz > /dev/tty ) > & /dev/null
Щоб перенаправити STDOUT на консоль та STDERR у файл:
( pkg_add emacs-23.4,2.tbz > /dev/tty ) > & stderr.log
Щоб перенаправити STDOUT у файл та STDERR на файл:
( pkg_add emacs-23.4,2.tbz > stdout.log ) > & stderr.log
EDIT: Причина цього працює в тому, що дія в () відбувається першим; Ergo, якщо ми перенаправили STDOUT, він більше не буде доступний за межами (). Це залишає нам лише STDERR, і тоді ми можемо перенаправити це за бажанням.
sh
.