Перенаправить stderr и stdout в другой файловый дескриптор

Перенаправить stderr и stdout в другой файловый дескриптор

exec 6>&1скопирует файловый дескриптор 1 на 6.

Но как мне скопировать stderr и stdout (1 и 2) в файловый дескриптор 6?

решение1

Перенаправить stdout на 6 и stderr на stdout (таким образом, он будет дополнительно перенаправлен на 6):

command >&6 2>&1

решение2

Я не думаю, что можно перенаправить два файловых дескриптора в один, но можно использовать два файловых дескриптора, указывающих на один файл

exec 1>./all.txt
exec 2>./all.txt

решение3

Попробуйте с:

command &>&6

&>filename  
    # Redirect both stdout and stderr to file "filename."  
    # This operator is now functional, as of Bash 4, final release.  
M>&N  
    # "M" is a file descriptor, which defaults to 1, if not set.  
    # "N" is another file descriptor.  

Связанный контент