linux 重定向

linux 重定向

先看 > 和 >> ,他俩作用类似,都是输出到一个文件中,唯一是 > 会覆盖文件原有内容,而 >> 是在原有内容后一行追加。


然后是 1>、 2>、 1>>、 2>>的使用,其作用是在需要将正确输出和错误输出分开保存时用到。例如在执行脚本时。用一个简单的python脚本说明:

脚本如下:

# coding: utf-8
if __name__ == '__main__':
     print 'Hello'
     int('Hello')

该脚本先输出"Hello",这一步是正常的,然后将"Hello"转换为int类型,这里会报错。直接运行:

$python test.py > txt
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    int('Hello')
ValueError: invalid literal for int() with base 10: 'Hello'
$cat txt
Hello

可以看到正确的输出保存到result.txt文件,而错误信息输出到了屏幕。

执行下面的操作:

python test.py 1> right.txt 2>wrong.txt
$cat right.txt
Hello
$cat wrong.txt
Traceback (most recent call last):
  File "test.py", line 4, in <module>
    int('Hello')
ValueError: invalid literal for int() with base 10: 'Hello'
正确输出保存到了right.txt,错误输出则保存到wrong.txt

1>>  和  2>> 与 >>是类似的,都是在原有内容后追加新内容。



  • 发表于 2018-08-24 15:13
  • 阅读 ( 2357 )
  • 分类:linux

0 条评论

请先 登录 后评论
安生水
安生水

348 篇文章

作家榜 »

  1. omicsgene 700 文章
  2. 安生水 348 文章
  3. Daitoue 167 文章
  4. 生物女学霸 120 文章
  5. xun 82 文章
  6. 红橙子 78 文章
  7. rzx 75 文章
  8. CORNERSTONE 72 文章