• shell讲解-小案例


    shell讲解-小案例

    一、文件拷贝输出检查

    下面测试文件拷贝是否正常,如果cp命令并没有拷贝文件myfile到myfile.bak,则打印错误信息。注意错误信息中basename $0打印脚本名。如果脚本错误退出,一个好习惯是显示脚本名并将之定向到标准错误中。用户应该知道产生错误的脚本名。

     

    [root@localhost ~]# cat ifcp.sh 
    #!/bin/sh
    # ifcp.sh
    if cp myfile myfile.bak; then
                    echo "good copy"
    else
                    echo "`basename $0`: error could not copy the file" >&2
    fi
    [root@localhost ~]# ./ifcp.sh 
    cp: cannot stat `myfile': No such file or directory
    ifcp.sh: error could not copy the file

     

    [root@localhost ~]# cat ifcp.sh 
    #!/bin/sh
    # ifcp.sh
    if cp myfile myfile.bak > /dev/null 2>&1; then
                    echo "good copy"
    else
                    echo "`basename $0`: error could not copy the file" >&2
    fi
    [root@localhost ~]# ./ifcp.sh 
    ifcp.sh: error could not copy the file

    上面当中>/dev/null表示任何标准输出都定向到那个无尽的“黑洞”/de/null中,然后2>&1表示错误输出也是到/dev/null中,&1表示前面的那个/dev/null,脚本运行时,所有输出包括错误重定向至系统垃圾堆。

    二、五颜六色的脚本

    #!/bin/bash
     
    clear
    echo -e "33[1m Hello World"
     # bold effect
    echo -e "33[5m Blink"
           # blink effect
    echo -e "33[0m Hello World"
     # back to noraml
     
    echo -e "33[31m Hello World"
     # Red color
    echo -e "33[32m Hello World"
     # Green color
    echo -e "33[33m Hello World"
     # See remaing on screen
    echo -e "33[34m Hello World"
    echo -e "33[35m Hello World"
    echo -e "33[36m Hello World"
     
    echo -e -n "33[0m"
      # back to noraml
    echo -e "33[41m Hello World"
    echo -e "33[42m Hello World"
    echo -e "33[43m Hello World"
    echo -e "33[44m Hello World"
    echo -e "33[45m Hello World"
    echo -e "33[46m Hello World"
     
    echo -e "33[0m Hello World"

     

  • 相关阅读:
    caption标签,为表格添加标题和摘要
    用css样式,为表格加入边框
    table标签,认识网页上的表格
    给div命名,使逻辑更加清晰
    认识div在排版中的作用
    使用ol,添加图书销售排行榜
    使用ul,添加新闻信息列表
    关于tableView在滚动时存在的偏移量问题
    跳转到微信扫一扫
    文件下载的缓存策略
  • 原文地址:https://www.cnblogs.com/liuyansheng/p/6180303.html
Copyright © 2020-2023  润新知