zoukankan      html  css  js  c++  java
  • I/O重定向和管道

    一:I/O设备

    I/OInput/Output),即输入/输出,通常指数据在内部存储器和外部存储器或其他周边设备之间的输入和输出。

    标准输入(STDIN):0 默认接受来自键盘的输入

    标准输出(STDOUT):1 默认输出到终端

    标准错误(STDERR):2 默认输出到终端

    二:I/O重定向

    I/O重定向即改变标准输入、输出和错误的默认位置

    标准输出和错误可以被重定向文件

    • > 把STDOUT重定向到文件
    • 2> 把STDERR重定向到文件
    • &> 把所有输出重定向到文件  ==   COMMAND > /path/to/file.out 2>&1  ==  (COMMAND 2>&1) > /path/to/file.out
    • >> 将标准输出追加到文件
    • 2>> 将标准错误追加到文件
    • &>> 将标准输出和标准错误都追加到文件
    • () 合并多个程序的标准输出
    • < 重定向标准输入
    • <<EOF heretext就地文本

    set -C 禁止将内容覆盖已有文件,但可以追加,但是使用>|FILE可以强制覆盖

    set +C 取消禁止覆盖

    三:管道

    pipe :CMD1 | CMD2 CMD1的标准输出作为CMD2的标准输入

    exp:
    ls /error /data/ 2>&1 | tr 'a-z' 'A-Z' 
    ls /error /data/ |& tr 'a-z' 'A-Z' 
    echo {1..100} | tr ' ' '+' | bc 计算1到100的和
    seq -s + 100 | bc
    tar -cvf - /etc | tar -xvf -
    echo 'xt.,l 1 jr#*!mn 2 c*/fe 3 uz 4' | tr -dc '[:digit:][:space:]'
    touch `openssl rand -base64 10 | tr -dc '[:alnum:]' | tr '[:upper:]' '[:lower:]'`.log 

    tee 用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin。简单的说就是把数据重定向到给定文件和屏幕上,-a 追加模式

  • 相关阅读:
    docker删除容器再删除镜像
    centOS7安装docker遇到 [Errno 14] curl#35
    设置centos7界面语言为中文
    sublime查看项目代码多少行
    1. 常用及特殊
    7.逆波兰,二叉树三叉树
    6.表单提交,input键盘变搜索,有关自定义属性input操作
    5.字符串的第一次见到的方法
    2.手机上浏览器看控制台的插件
    1. 时间插件
  • 原文地址:https://www.cnblogs.com/L-dongf/p/8706196.html
Copyright © 2011-2022 走看看