• 《Advanced Bash-scripting Guide》学习(十七):用more来查看gzip文件


    本文所选的例子来自于《Advanced Bash-scripting Gudie》一书,译者 杨春敏 黄毅

     1 #!/bin/bash
     2 #使用more查看gzip文件
     3 
     4 NOARGS=65
     5 NOTFOUND=66
     6 NOTGZIP=67
     7 
     8 if [ $# -eq 0 ]                                    #[ $# -eq 0 ]与[ -z "$1" ]有同样的效果
     9 then
    10         echo "Usage: `basename $0` filename" >&2   #将错误输出到屏幕,&[n]表示已存在的文件描述符,&2表示标准错误输出,如换成&>2,屏幕不显示错误输出,why?
    11         exit $NOARGS
    12 fi
    13 
    14 filename=$1
    15 
    16 if [ ! -f "$filename" ]
    17 then
    18         echo "File $filename not found!" >&2       #和上面一样,只是感觉没必要再stderr重定向到标准屏幕,因为默认就是标准错误输出到屏幕的,所以可以去掉
    19         exit $NOTFOUND
    20 fi
    21 
    22 if [ ${filename##*.} != "gz" ]                     #变量替换,拿走.之前的所有的字符串,参照《ABS》中文版第23页echo ${PATH#*:}拿掉第一个:左边所有字串
    23 then                                               ###是判断最后面的. #只是判断第一个 ##最远匹配 #最近匹配
    24         echo "File $1 is not a gzipped file!"
    25         exit $NOTGZIP
    26 fi
    27 
    28 zcat $1 | more                                     #zcat命令用于不真正解压缩文件,就能显示压缩包中文件的内容的场合
    29 
    30 exit $?

    脚本运行结果

  • 相关阅读:
    总结Spring Set注入方式及对property标签的理解
    spring基于Annotation装配Bean时在bean.xml中添加<context:component-scan>标签报错
    java web(struts2)+python+mysql 的简单实践
    罗辑思维--怎样成为一个高手
    教练助手
    小组作业(第五组)
    个人开发总结
    第五组小组作业
    个人作业
    小组总结
  • 原文地址:https://www.cnblogs.com/my_captain/p/7148197.html
Copyright © 2020-2023  润新知