linux学习-3

I/O重定向与管道(I/O即输入输出

输出重定向:在date命令后加“>,并指向date.txt文件,那么结果就会写入date.txt

date的输出结果重定向到一个普通文件。再打开一个终端。

 

 

在第1个终端中敲“date > /dev/pts/2,这样就会在第二个终端中显示date的内容。

passwd命令:passwd改密码的时候系统会产生一个进程,其pid4474

查看passwd的进程用:ps aux | grep passwd

 (上图黑色条)绝大多数进程都有0,1,2这三种文件描述符。

0:标准输入(键盘输入)  1:标准输出,输出到终端   2:标准错误,输出到终端

3及以上为常规文件描述符,

 

date命令在默认情况下将输出结果显示在终端,此时文件描述符为1。现改变输出的方向,将终端改为date.txt文件。这个行为叫重定向其实也就是将date的输出结果重新写入了date.txt文件中)。

 

改变描述符为2的文件的输出方向,date命令是正确的,执行结果在终端中显示。如果命令是错误的,执行结果标准(也就是的报错的信息)输出终端上,重定向到date.txt

①命令是正确的

②命令是错误的

输出重定向分为正确输出和错误输出。

正确输出:1> , 1>>等价于> , >> 1可省略)

错误输出:2> , 2>>

>表示覆盖,>>”表示追加)区别如下:

正确输出重定向:将命令的输出结果重新写入的到一个文件中。

 

错误输出重定向(将报错信息重新写入文件中)

将正确结果与错误结果都输出同一文件内:

正确结果与错误结果都输出重定向到相同的位置

 

输入重定向(输入用< ,输出用>

<是可以省略的,输出结果是一样的,但原理不一样。

<”是表示写入一个文件,无则表示一个参数。

dd命令:读取数据并写入。

/dev/zero中读取数据并写入file01.txt文件,每次写入1MiB,一共写入两次。

上述使用输入重定向和输出重定向也可以实现同样的功能:

at命令:延时执行。按control+d退出

重定向综合案例

①利用重定向建立多行文件(ctrl+d结束)

上述所使用的>”是覆盖,但在此处是指覆盖原来的file03.txt,输入的三行文本一次输出到file03.txt。如果退出后再次输出,那将覆盖掉先前的文本内容,此时就需要用“>>”进行追加。

ctrl+d结束显得比较繁琐,用户可以自定义一个结束的符号,通常使用‘EOF

 

 

I/O重定向与管道(I/O即输入输出

 

输出重定向:在date命令后加“>,并指向date.txt文件,那么结果就会写入date.txt

 

date的输出结果重定向到一个普通文件。再打开一个终端。

 

在第1个终端中敲“date > /dev/pts/2,这样就会在第二个终端中显示date的内容。

 

passwd命令:passwd改密码的时候系统会产生一个进程,其pid4474

查看passwd的进程用:ps aux | grep passwd

 

 

 

(上图黑色条)绝大多数进程都有0,1,2这三种文件描述符。

0:标准输入(键盘输入)  1:标准输出,输出到终端   2:标准错误,输出到终端

3及以上为常规文件描述符,

 

 

date命令在默认情况下将输出结果显示在终端,此时文件描述符为1。现改变输出的方向,将终端改为date.txt文件。这个行为叫重定向其实也就是将date的输出结果重新写入了date.txt文件中)。

 

 

改变描述符为2的文件的输出方向,date命令是正确的,执行结果在终端中显示。如果命令是错误的,执行结果标准(也就是的报错的信息)输出终端上,重定向到date.txt

①命令是正确的

 

②命令是错误的

 

 

输出重定向分为正确输出和错误输出。

正确输出:1> , 1>>等价于> , >> 1可省略)

错误输出:2> , 2>>

>表示覆盖,>>”表示追加)区别如下:

 

正确输出重定向:将命令的输出结果重新写入的到一个文件中。

 

 

错误输出重定向(将报错信息重新写入文件中)

 

将正确结果与错误结果都输出同一文件内:

 

正确结果与错误结果都输出重定向到相同的位置

 

 

 

 

 

 

输入重定向(输入用< ,输出用>

<是可以省略的,输出结果是一样的,但原理不一样。

<”是表示写入一个文件,无则表示一个参数。

 

 

 

dd命令:读取数据并写入。

/dev/zero中读取数据并写入file01.txt文件,每次写入1MiB,一共写入两次。

 

上述使用输入重定向和输出重定向也可以实现同样的功能:

 

 

at命令:延时执行。按control+d退出

 

 

重定向综合案例

①利用重定向建立多行文件(ctrl+d结束)

 

上述所使用的>”是覆盖,但在此处是指覆盖原来的file03.txt,输入的三行文本一次输出到file03.txt。如果退出后再次输出,那将覆盖掉先前的文本内容,此时就需要用“>>”进行追加。

ctrl+d结束显得比较繁琐,用户可以自定义一个结束的符号,通常使用‘EOF


posted @ 2023-11-05 20:11  T-L  阅读(21)  评论(0)    收藏  举报