zoukankan      html  css  js  c++  java
  • 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"

     

  • 相关阅读:
    Jquery 实现banner图滚动效果
    常用正则表达式集锦
    获取客户端ip并用正则表达式验证
    锋利的jquery学习笔记
    ASP.NET 中DataGrid item 绑定方法
    SQL float 保留两位小数
    android 应用程序中执行Linux 命令
    UBUNTU 测试跑分
    The declared package..does not match the expected package..
    mybatis 配置文件 配置别名
  • 原文地址:https://www.cnblogs.com/liuyansheng/p/6180303.html
Copyright © 2011-2022 走看看