美文网首页Linux运维路线
linux-重定向和管道

linux-重定向和管道

作者: 依然慢节奏 | 来源:发表于2019-07-06 14:54 被阅读2次

    一 单行重定向

    [admin@izwz9czvva46znlibabnviz ~/data]$cat > f1
    123
    456
    789
    ^C
    [admin@izwz9czvva46znlibabnviz ~/data]$cat f1
    123
    456
    789
    

    单行重定向是每一行写完敲回车之后进行写入文件;

    二 多行重定向

    image.png
    [admin@izwz9czvva46znlibabnviz ~/data]$cat > f2 <<EOF
    > if true
    > do something
    > else
    > do anything
    > EOF
    [admin@izwz9czvva46znlibabnviz ~/data]$cat f2
    if true
    do something
    else
    do anything
    

    多行重定向是以指定标识符开始,指定标识符结束,遇到标识符后才进行写入文件;

    三 管道

    image.png
    当前登录用户名大写
    [admin@izwz9czvva46znlibabnviz ~/data]$whoami | tr 'a-z' 'A-Z'
    ADMIN
    
    1-100求和
    [admin@izwz9czvva46znlibabnviz ~/data]$echo {1..100}
    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100
    [admin@izwz9czvva46znlibabnviz ~/data]$echo {1..100} | tr ' ' + 
    1+2+3+4+5+6+7+8+9+10+11+12+13+14+15+16+17+18+19+20+21+22+23+24+25+26+27+28+29+30+31+32+33+34+35+36+37+38+39+40+41+42+43+44+45+46+47+48+49+50+51+52+53+54+55+56+57+58+59+60+61+62+63+64+65+66+67+68+69+70+71+72+73+74+75+76+77+78+79+80+81+82+83+84+85+86+87+88+89+90+91+92+93+94+95+96+97+98+99+100
    [admin@izwz9czvva46znlibabnviz ~/data]$echo {1..100} | tr ' ' + | bc
    5050
    
    将错误转换为标准输入进行大写转换
    [admin@izwz9czvva46znlibabnviz ~/data]$errorcmd 2>&1 | tr 'a-z' 'A-Z'
    -BASH: ERRORCMD: COMMAND NOT FOUND
    
    image.png image.png image.png
    [admin@izwz9czvva46znlibabnviz ~/data]$hostname |tee f.log
    izwz9czvva46znlibabnviz
    [admin@izwz9czvva46znlibabnviz ~/data]$cat f.log 
    izwz9czvva46znlibabnviz
    [admin@izwz9czvva46znlibabnviz ~/data]$uname |tee f.log 
    Linux
    [admin@izwz9czvva46znlibabnviz ~/data]$cat f.log 
    Linux
    ###选项a追加到文件中,默认覆盖
    [admin@izwz9czvva46znlibabnviz ~/data]$uname -r |tee -a f.log 
    3.10.0-957.10.1.el7.x86_64
    [admin@izwz9czvva46znlibabnviz ~/data]$cat f.log 
    Linux
    3.10.0-957.10.1.el7.x86_64
    

    相关文章

      网友评论

        本文标题:linux-重定向和管道

        本文链接:https://www.haomeiwen.com/subject/ituphctx.html