zxg588 发表于 2017-5-16 09:28:50

BASH Shell: How To Redirect stderr To stdout ( redirect stderr to a File )

Q. How do I redirect stderr to stdout? How do I redirect stderr to a file?

A. Bash and other modern shell provides I/O redirection facility. There are 3 default standard files (standard streams) open:
 stdin - Use to get input (keyboard) i.e. data going into a program.
 stdout - Use to write information (screen)
 stderr - Use to write error message (screen)
Understanding I/O streams numbers
The Unix / Linux standard I/O streams with numbers:
HandleNameDescription0stdinStandard input1stdoutStandard output2stderrStandard errorRedirecting the standard error stream to a file
The following will redirect program error message to a file called error.log:
$ program-name 2> error.log
$ command1 2> error.log
Redirecting the standard error (stderr) and stdout to file
Use the following syntax:
$ command-name &>file
OR
$ command > file-name 2>&1
Another useful example:
# find /usr/home -name .profile 2>&1 | more
Redirect stderr to stdout
Use the command as follows:
$ command-name 2>&1
页: [1]
查看完整版本: BASH Shell: How To Redirect stderr To stdout ( redirect stderr to a File )