linux shell "" ," |
您所在的位置:网站首页 › 输出重定向的符号是什么意思 › linux shell "" ," |
linux 关于标准输入输出的规定
Linux规定一下文件描述符 文件描述符 文件 对应设备 0 标准输入 keyboard,mouse 1 标准输出 屏幕监视器 2 错误输出 屏幕监视器>和>>都是输出重定向符号 其中>是重写 >>是追加到文件![]() 通常1>简写成>指的是标准输出 实例: # ll test01.txt test02.txt 1>file.out 2>file.err命令执行,没有任何返回值,原因是,返回值都重定向到相应的文件中了,而不再在前端显示。 在这个命令中,1代表标准输出(stdout),2代表标准错误(stderr)。当你使用命令ll test01.txt test02.txt 1>file.out 2>file.err时,标准输出和标准错误会被分别重定向到file.out和file.err。 注意:这两个重定向操作是同时进行的,并没有先后顺序。因此,标准输出和标准错误会分别被重定向到指定的文件,互不影响。 高级用法,难理解 基于上述认识,我们才能理解 "1>&2" 和 "2>&1".。 1>&2 正确返回值传递给2输出通道, &2表示2输出通道 ,如果此处错写成 1>2, 就表示把1输出重定向到文件2中了。 2>&1 错误返回值传递给1输出通道,&1表示1输出通道。 总结就是&表示通道,不加&后面直接写到文件 实例: "2>&1"和"2>1"在shell中有着不同的含义: - "2>&1"表示将标准错误(stderr)重定向到标准输出(stdout)。这意味着标准错误和标准输出都会发送到同一个地方,通常是终端或重定向的位置。 - "2>1"表示将标准错误重定向到一个名为"1"的文件。这意味着标准错误会被写入一个名为"1"的文件中,而不是作为标准输出的一部分。因此,这两个表达式的含义是不同的,你需要根据具体的需求来选择使用哪一个。 输入重定向输出重定向的符号是 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |