当前位置:   article > 正文

Linux中,重定向和管道_cannot overwrite existing file

cannot overwrite existing file

Linux中的重定向和管道

llinux中的三种IO设备:
  1. 标准输入(STDIN),文件描述符号为:0,默认从键盘获取输入
  2. 标准输出(STDOUT),文件描述符号位:1,默认输出到显示终端
  3. 标准错误(STDERR),文件描述符号为:2,默认输出到显示终端

IO重定向是为了改变默认输入、输出的位置:

1. 输出重定向(标准输出STDOUT和标准错误输出STDERR)
  • 【>】标准输出覆盖重定向
  • 【>>】标准输出追加重定向
  • 【2>】标准错误输出重定向
  • 【2>>】标准错误输出追加重定向
  • 【&>】将标准输出和标准错误输出都同时重定向(相当于二次重定向【2>&1】)
  • 【&>>】将标准输出和标准错误输出都同时追加重定向
  • 【set -C】命令:启用系统禁止覆盖重定向(set -C执行后,再做重定向时,重定向文件如果存在则会报错 cannot overwrite existing file)如果在启用【set -C】命令后依然需要覆盖重定向文件,可以使用【>|】来强制覆盖
  • 【set +C】命令:解除禁止覆盖重定向(set +C执行后,重定向文件如果存在则不会报错,直接覆盖)
2. 输入重定向(标准输入)
  • 【<】输入重定向;
  • 【<<END】多行输入;(END为多行输入的结束标志)通常用于脚本创建新文件时写入固定内容
3. 管道
  • 【|】把前一个命令的执行结果当做后一个命令的输入

4. 输出重定向例子

4.1 把/etc/fstab文件内容重定向到/tmp目录下的gdy.out文件中
【cat /etc/fstab >/tmp/gdy.out】

[root@xdd ~]# cat /etc/fstab >/tmp/gdy.out
[root@xdd ~]# cat /tmp/gdy.out 

#
# /etc/fstab
# Created by anaconda on Tue Mar 19 10:24:36 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Gausst松鼠会/article/detail/213046
推荐阅读
相关标签
  

闽ICP备14008679号