在linux系统中,正确输出的编号为1,错误输出编号为2
在bash中,显示的输出都是显示在系统的字符设备中,存放位置在/dev/pts/{0..[[:digit:]]}
在系统中用普通用户student执行下面命令
find /etc -name passwd
因为student用户权限问题会有以下输出
find: ‘/etc/pki/CA/private’: Permission denied ##没有进入权力,报错
find: ‘/etc/pki/rsyslog’: Permission denied
find: ‘/etc/audit’: Permission denied
/etc/passwd ##正确输出
find: ‘/etc/polkit-1/rules.d’: Permission denied
find: ‘/etc/polkit-1/localauthority’: Permission denied
find: ‘/etc/dhcp’: Permission denied
find: ‘/etc/selinux/targeted/modules/active’: Permission denied
find: ‘/etc/lvm/archive’: Permission denied
find: ‘/etc/lvm/backup’: Permission denied
find: ‘/etc/lvm/cache’: Permission denied
find: ‘/etc/grub.d’: Permission denied
/etc/pam.d/passwd ##正确输出
find: ‘/etc/audisp’: Permission denied
find: ‘/etc/firewalld’: Permission denied
find: ‘/etc/cups/ssl’: Permission denied
find: ‘/etc/ipsec.d’: Permission denied
find: ‘/etc/libvirt’: Permission denied
find: ‘/etc/sudoers.d’: Permission denied
find: ‘/etc/named’: Permission denied
find /etc -name passwd > file
##重定向正确输出
正确的输出重定向到了当前所在目录下的file文件中
我们查看file,就可以看到正确的输出
find /etc -name passwd 2> file
##重定向错误输出
find /etc -name passwd &> file
##重定向所有输出
注意: >, 2> ,&> 都会覆盖源文件内容
有时候我们想保留每一次的输出,就可以使用追加
find /etc -name passwd >> file
##追加正确输出
find /etc -name passwd 2>> file
##追加错误输出
find /etc -name passwd &>> file
##追加所有输出
## >> 2>> &>> 不会覆盖源文件内容,会把相应的输出字符方到文件的最后