博客
关于我
linux命令重定向>、>>、 1>、 2>、 1>>、 2>>、 <(转)
阅读量:404 次
发布时间:2019-03-06

本文共 690 字,大约阅读时间需要 2 分钟。

在命令行操作中,>>>是两个常用的重定向符号,但它们的使用场景和特性有显著区别。理解这两个符号的区别对于日常工作非常重要,尤其是在脚本编写和数据处理时。

1. >的作用

>符号用于将标准输出重定向到指定文件。具体来说,它会创建目标文件,如果目标文件不存在则会自动新建。>符号适用于以下场景:

  • 文件存在:如果目标文件存在,>符号会将标准输出追加到该文件中。
  • 文件不存在:如果目标文件不存在,>符号会创建该文件并将标准输出写入其中。

2. >>的作用

>>符号与>类似,但它的行为有一个显著差别:>>也会尝试创建目标文件,但它不会自动创建不存在的文件夹。具体来说:

  • 文件存在:如果目标文件存在,>>符号会将标准输出追加到该文件中。
  • 文件不存在:如果目标文件不存在但文件夹存在,>>符号会创建目标文件并将标准输出写入其中。
  • 文件夹不存在:如果目标文件的父文件夹不存在,>>符号会报错,无法创建文件夹。

3. 示例用法

以下是>>>在实际操作中的示例:

  • 正确重定向
pp.py 1 > right.txt 2 >> wrong.txt
  • 错误重定向
pp.py 1 > pp.txt 2 >> pp.txt
  • 混合重定向
pp.py 1 >> pp.txt 2 >> pp.txt

4. 高级用法

在实际脚本编写中,可以灵活组合>>>符号来满足不同的需求:

  • 单独重定向错误
pp.py 1 2 /dev/null
  • 同时重定向正确和错误
pp.py 1 > right.txt 2 >> right.txt

通过合理运用>>>符号,可以实现对命令输出的精确控制,提升工作效率。

转载地址:http://gzbkz.baihongyu.com/

你可能感兴趣的文章
object detection错误之Could not create cudnn handle: CUDNN_STATUS_INTERNAL_ERROR
查看>>
object detection错误之no module named nets
查看>>
Object of type 'ndarray' is not JSON serializable
查看>>
Object Oriented Programming in JavaScript
查看>>
object references an unsaved transient instance - save the transient instance before flushing
查看>>
Object.assign用法
查看>>
Object.create
查看>>
Object.keys()的详解和用法
查看>>
objectForKey与valueForKey在NSDictionary中的差异
查看>>
Objective - C 小谈:消息机制的原理与使用
查看>>
OBJECTIVE C (XCODE) 绘图功能简介(转载)
查看>>
Objective-C ---JSON 解析 和 KVC
查看>>
Objective-C 编码规范
查看>>
Objective-Cfor循环实现Factorial阶乘算法 (附完整源码)
查看>>
Objective-C——判断对象等同性
查看>>
objective-c中的内存管理
查看>>
Objective-C之成魔之路【7-类、对象和方法】
查看>>
Objective-C享元模式(Flyweight)
查看>>
Objective-C以递归的方式实现二叉搜索树算法(附完整源码)
查看>>
Objective-C内存管理教程和原理剖析(三)
查看>>