zoukankan      html  css  js  c++  java
  • 永久重定向

    如果在脚本中重定向许多数据,那么重定向每个echo语句就不太方便了,这种情况下,可以使用exec命令通知shell脚本执行期间重定向特定的文件描述符

    文件名为: sh12.sh 

    #!/bin/bash
    # redirecting all output to a file
    exec 1>testout
    
    echo "This is a test of redirecting all output"
    echo "from a script to another file."
    echo "without haviing to redirect every individual line"

    exec命令启动一个新的shell,并将STDOUT文件描述重定向到一个文件,所有定向到STDOUT的脚本输出都将重定向到这个文件

    运行 sh sh12.sh ,你会发现没输出任何东西,然后查看testout文件, cat testout 

    输出:

    This is a test of redirecting all output
    from a script to another file.
    without haviing to redirect every individual line

    然后将错误信息和正确信息分别重定向不同的文件

    文件名 sh13.sh 

    #!/bin/bash
    # redirecting output to different locations
    
    exec 2>testerror
    
    echo "This is the start of the script"
    echo "now reidirecting all output to another location"
    
    exec 1>testout
    
    echo "This output should go to the testout testout file"
    echo "but this should go to the testerror file" >&2

    运行 sh sh13.sh 

    输出:

    This is the start of the script
    now reidirecting all output to another location

    查看testout文件的内容 cat testout 

    输出: This output should go to the testout testout file 

    查看testerror文件的内容 cat testrror 

    输出: but this should go to the testerror file 

  • 相关阅读:
    TP框架模板中IF Else 如何使用?
    Append 后如何使用 fadein淡入效果
    ThinkPad如何修改fn键默认操作
    TP框架ajax U方法不解析怎么办?
    thinkphp session如何取数组
    FTP服务搭建
    Linux系统学习之字符处理
    如何使用zabbix初级监控
    项目同步部署
    巡检常用命令
  • 原文地址:https://www.cnblogs.com/jacson/p/4791398.html
Copyright © 2011-2022 走看看