113、Linux I/O重定向详细介绍 您所在的位置:网站首页 重定向输入流 113、Linux I/O重定向详细介绍

113、Linux I/O重定向详细介绍

2023-07-01 02:54| 来源: 网络整理| 查看: 265

Linux I/O重定向

Linux I/O重定向可以定义为,更改从命令读取输入到命令发送输出的方式。你可以重定向命令的输入和输出。对于重定向符号,可以是 或者 | 。

I/O重定向中的标准流

Bash shell在I/O重定向中有三个标准流:

标准输入(stdin):stdin流编号为stdin(0)。bash shell从stdin获取输入。默认情况下,键盘用作输入。 标准输出(stdout):stdout流编号为stdout(1)。bash shell将输出发送到stdout。输出将显示。 标准错误(stderr):stderr流编号为stderr(2)。bash shell向stderr发送错误消息。显示错误消息。

重定向到文件

每个流都使用重定向命令。单括号'>'或双括号'>>'可用于重定向标准输出。如果目标文件不存在,将创建一个具有相同名称的新文件。

覆盖:带有单括号“>”的命令将覆盖现有的文件内容。

>:标准输出 :标准错误

注意:写“1>”或“>”和“0

追加: 带有双括号“>>”的附加命令不会覆盖现有的文件内容。

>>-标准输出 -标准错误 用法: cat >>

重定向到程序

重定向到程序管道将流从一个程序重定向到另一个程序。当管道用于将一个程序的标准输出发送到另一个程序时,第一个程序的数据将不会显示在终端上,只显示第二个程序的信息。尽管管道的功能看起来可能与“>”和“>>”相似,但有显著差异。管道将数据从一个程序重定向到另一个程序,而括号仅用于文件的重定向。

用法: ls *.txt | cat > txtFile

Linux input 重定向

| Example: echo Welcome to JavaTpoint. >| newfile.txt

>>append

append'>>' 不允许覆盖文件内容,因此显示新的和旧的文件内容。

Syntax: command >> Example: echo You all are welcome here. >> newfile.txt

Linux错误重定向

2> stderr

命令'2>'重定向输出的错误,它可以通过重定向错误消息来帮助我们减少显示的混乱。

Example: zcho hyii 2> /dev/null

2> &1

此命令有助于重定向同一文件中的stdout和stderr。

Example: newfile.txt > abc.txt and error.txt 2>&1

注意:重定向的顺序非常重要:

ls > dirlist 2>&1

然后,stdout和stderr都将被定向到文件目录列表:

ls 2>&1 > dirlist

 然后,只有stdout会重定向到目录列表。这是因为,在将stdout重定向到目录列表之前,stderr已经复制了stdout。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有