首页 > 其他分享 >bash中 2>&1 & 的详细解释

bash中 2>&1 & 的详细解释

时间:2023-01-17 19:33:36浏览次数:47  
标签:解释 重定向 输出 标准 ls 详细 txt bash

1、首先,bash中0,1,2三个数字分别代表STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO,即标准输入(一般是键盘),标准输出(一般是显示屏,准确的说是用户终端控制台),标准错误(出错信息输出)。

012
标准输入 标准输出 标准错误

2、输入输出可以重定向,所谓重定向输入就是在命令中指定具体的输入来源,譬如 cat < test.c 将test.c重定向为cat命令的输入源。
输出重定向是指定具体的输出目标以替换默认的标准输出,譬如ls > 1.txt将ls的结果从标准输出重定向为1.txt文本。有时候会看到如 ls >> 1.txt这类的写法。 > 和 >> 的区别在于:> 用于新建而>>用于追加。

3.到了此时,你应该也能猜到2>&1&的用意了。不错,2>&1就是用来将标准错误2重定向到标准输出1中的。此处1前面的&就是为了让bash将1解释成标准输出而不是文件1。至于最后一个&,则是让bash在后台执行。

标准错误重定向到标准输出并且在后台执行。

   

标签:解释,重定向,输出,标准,ls,详细,txt,bash
From: https://www.cnblogs.com/geoffrey-peng/p/17058579.html

相关文章