linux新手基础6—重定向
1.输出重定向
符号 | 含义 |
---|---|
> | #重定向正确输出 |
2> | #重定向错误输出 |
&> | #重定向所有输出 |
注意:重定向会覆盖原文件内容
输出所有etc目录下含有‘passwd’的内容
[student@localhost ~]$ find /etc/ -name passwd
find: ‘/etc/pki/CA/private’: Permission denied #重定向错误输出
find: ‘/etc/pki/rsyslog’: Permission denied #重定向错误输出
find: ‘/etc/audit’: Permission denied #重定向错误输出
/etc/passwd #重定向正确输出file
find: ‘/etc/polkit-1/rules.d’: Permission denied #重定向错误输出
find: ‘/etc/polkit-1/localauthority’: Permission denied #重定向错误输出
find: ‘/etc/grub.d’: Permission denied #重定向错误输出
find: ‘/etc/selinux/targeted/modules/active’: Permission denied #重定向错误输出
/etc/pam.d/passwd #重定向正确输出
find: ‘/etc/lvm/archive’: Permission denied #重定向错误输出
find: ‘/etc/lvm/backup’: Permission denied #重定向错误输出
find: ‘/etc/lvm/cache’: Permission denied #重定向错误输出
find: ‘/etc/dhcp’: Permission denied #重定向错误输出
find: ‘/etc/firewalld’: Permission denied #重定向错误输出
find: ‘/etc/audisp’: Permission denied #重定向错误输出
find: ‘/etc/sudoers.d’: Permissifileon denied #重定向错误输出
find: ‘/etc/ipsec.d’: Permission denied #重定向错误输出
find: ‘/etc/libvirt’: Permission denied #重定向错误输出
find: ‘/etc/cups/ssl’: Permission denied #重定向错误输出
[student@localhost ~]$
find /etc/ -name passwd > westos
find /etc/ -name passwd 2> westos
find /etc/ -name passwd &> westos
![](https://img-blog.csdnimg.cn/20190111115507192.?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDMyMTExNg==,size_16,color_FFFFFF,t_70
正确输出与错误输出
命令 | 含义 |
---|---|
find /etc/ -name passwd 1> westos | #正确输出到westos文件中 |
find /etc/ -name passwd 2> westfileos | #错误输出到westos文件中 |
find /etc/ -name passwd 1&2> westos | #错误所有到westos文件中 |
2.输出追加(追加不会覆盖原文件内容)
命令 | 含义 |
---|---|
>> | #追加正确输出到文件最后 |
2>> | #追加错误输出到文件最后 |
&>> | #追加所有输出到文件最后 |
例如:
管道
把输出变成下一个程序的输入
管道是用来组合多条命令的使用的
ls /root | wc -l
查看/root下所有文件个数
注意:通过管道后输出会变成输入,那么是无法保存在文件中的
tee #复制输出到指定位置
ls /root | tee file1 | wc -l
cat file #file中已经保存了输出
| #管道不允许错误输出通过
2>&1 #表示把错误输出伪装成正确输出
例子:
[student@localhost ~]$ cat -b /etc/passwd | head -n 18 | tail -n 4 #输出/etc/passwd中的15-18行
15 polkitd: x:999:998:User for polkitd:/:/sbin/nologin
16 avahi: x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
17 avahi-autoipd: x: 170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
18 rpc: x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
2.输入重定向
多行录入
cat >file <<we
> hello
> redhat
> we
手动改密码时需要一个一个改 那么如何实现自动更改密码?
例如: