linux 输入--输出--重定向 stdin/stdout/stderr

时间:2022-12-02 00:01:35

重定向

shell编辑文本

图形化工具编辑文件

 

1、重定向

    标准输入

    标准输出

    错误输出

linux 输入--输出--重定向 stdin/stdout/stderr

[root@sky kkk]# cat aaa.sh
#!/bin/bash
a=1
while [ $a -le 5 ]
do 
    useradd user$a
    let a++
done
[root@sky kkk]# ./aaa.sh
[root@sky kkk]# tail /etc/passwd
tcpdump:x:72:72::/:/sbin/nologin
sky:x:500:500:sky:/home/sky:/bin/bash
server:x:501:501::/home/server:/bin/bash
client:x:502:502::/home/client:/bin/bash
dhcpd:x:177:177:DHCP server:/:/sbin/nologin
user1:x:503:503::/home/user1:/bin/bash
user2:x:504:504::/home/user2:/bin/bash
user3:x:505:505::/home/user3:/bin/bash
user4:x:506:506::/home/user4:/bin/bash
user5:x:507:507::/home/user5:/bin/bash

[root@sky kkk]# cat aaa1.sh
#!/bin/bash
a=1
while [ $a -le 5 ]
do
   echo "111" | passwd --stdin user$a               //标准输入
   let a++
done
[root@sky kkk]# ./aaa1.sh
更改用户 user1 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 user2 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 user3 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 user4 的密码 。
passwd: 所有的身份验证令牌已经成功更新。
更改用户 user5 的密码 。
passwd: 所有的身份验证令牌已经成功更新。

 

[root@sky kkk]# cat 1.TXT            //标准输出
11111111
[root@sky kkk]# cat 11.txt            //标准错误输出
cat: 11.txt: 没有那个文件或目录
[root@sky kkk]#



[root@sky kkk]# cat 1.TXT 11.txt
11111111
cat: 11.txt: 没有那个文件或目录

[root@sky kkk]# cat 1.TXT 11.txt > 3.txt        //标准输出记录在3.tx,错误输出没有记录
cat: 11.txt: 没有那个文件或目录
[root@sky kkk]#
[root@sky kkk]# cat 3.txt
11111111

[root@sky kkk]# cat 1.TXT 11.txt  1> 4.TXT  2>5.TXT
[root@sky kkk]# cat 4.TXT                   //标准输出1记录在4.TXT
11111111
[root@sky kkk]# cat 5.TXT                   //错误输出2记录在5.TXT
cat: 11.txt: 没有那个文件或目录
[root@sky kkk]#

linux 输入--输出--重定向 stdin/stdout/stderr

 

[root@sky kkk]# cat test.sh
#!/bin/bash
ping  -c 3 192.168.10.128 1>/dev/null
if [ $? -eq 0 ]
  then
  echo " The host is up!"
fi

[root@sky kkk]# ./test.sh
 The host is up!                //忽略了ping的标准输出
[root@sky kkk]# vi test.sh
[root@sky kkk]# cat test.sh
#!/bin/bash
ping  -c 3 192.168.10.128
if [ $? -eq 0 ]
  then
  echo " The host is up!"
fi

[root@sky kkk]# ./test.sh
PING 192.168.10.128 (192.168.10.128) 56(84) bytes of data.
64 bytes from 192.168.10.128: icmp_seq=1 ttl=64 time=0.964 ms
64 bytes from 192.168.10.128: icmp_seq=2 ttl=64 time=0.448 ms
64 bytes from 192.168.10.128: icmp_seq=3 ttl=64 time=0.467 ms

--- 192.168.10.128 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 0.448/0.626/0.964/0.239 ms
 The host is up!                //记录了所有标准输出
[root@sky kkk]#