《Advanced Bash-scripting Guide》学习(十七):用more来查看gzip文件
本文所选的例子来自于《Advanced Bash-scripting Gudie》一书,译者 杨春敏 黄毅
#!/bin/bash
#使用more查看gzip文件
NOARGS=
NOTFOUND=
NOTGZIP=
] #[ $# -eq 0 ]与[ -z "$1" ]有同样的效果
then
echo "Usage: `basename $0` filename" >&2 #将错误输出到屏幕,&[n]表示已存在的文件描述符,&2表示标准错误输出,如换成&>2,屏幕不显示错误输出,why?
exit $NOARGS
fi
filename=$
if [ ! -f "$filename" ]
then
echo "File $filename not found!" >&2 #和上面一样,只是感觉没必要再stderr重定向到标准屏幕,因为默认就是标准错误输出到屏幕的,所以可以去掉
exit $NOTFOUND
fi
if [ ${filename##*.} != "gz" ] #变量替换,拿走.之前的所有的字符串,参照《ABS》中文版第23页echo ${PATH#*:}拿掉第一个:左边所有字串
then ###是判断最后面的. #只是判断第一个 ##最远匹配 #最近匹配
echo "File $1 is not a gzipped file!"
exit $NOTGZIP
fi
| more #zcat命令用于不真正解压缩文件,就能显示压缩包中文件的内容的场合
exit $?
脚本运行结果

《Advanced Bash-scripting Guide》学习(十七):用more来查看gzip文件的更多相关文章
- advanced bash shell guide读书笔记
http://note.youdao.com/noteshare?id=fc23a679849b4627d131d3ef07c74a71
- advanced dom scripting dynamic web design techniques Part One DOM SCRIPTING IN DETAIL CHAPTER 1 DO IT RIGHT WITH BEST PRACTICES
You’re excited; your client is excited. All is well. You’ve just launched the client’s latest websit ...
- [Bash Shell] Shell学习笔记
1. Shell简介 Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的.Shell既是一种命令语言,又是一种程序设计语言.作为命 ...
- 《DOM Scripting》学习笔记-——第三章 DOM
<Dom Scripting>学习笔记 第三章 DOM 本章内容: 1.节点的概念. 2.四个DOM方法:getElementById, getElementsByTagName, get ...
- 《DOM Scripting》学习笔记-——第二章 js语法
<Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...
- [转帖][Bash Shell] Shell学习笔记
[Bash Shell] Shell学习笔记 http://www.cnblogs.com/maybe2030/p/5022595.html 阅读目录 编译型语言 解释型语言 5.1 作为可执行程序 ...
- Conditions in bash scripting (if statements)
Shell中判断语句if中-z至-d的意思 - sunny_2015 - 博客园 https://www.cnblogs.com/coffy/p/5748292.html Conditions in ...
- Bash脚本编程学习笔记08:函数
官方资料:Shell Functions (Bash Reference Manual) 简介 正如我们在<Bash脚本编程学习笔记06:条件结构体>中最后所说的,我们应该把一些可能反复执 ...
- Bash脚本编程学习笔记07:循环结构体
本篇中涉及到算术运算,使用了$[]这种我未在官方手册中见到的用法,但是确实可用的,在此前的博文<Bash脚本编程学习笔记03:算术运算>中我有说明不要使用,不过自己忘记了.大家还是尽量使用 ...
随机推荐
- Map.Entry<K,V>分析
一.好处 你是否已经对每次从Map中取得关键字然后再取得相应的值感觉厌倦? Set keys = map.keySet( ); if(keys != null) { Iterator iterator ...
- c语言复制文件程序
#include <stdio.h> #include <stdlib.h> #include <string.h> #define SIZE 1024*1024* ...
- 20170411 F110初始界面-建议清单
功能块代码 F110 开发类 FIBP 事务说明 自动付款参数 程序 SAPF ...
- 20170401 错了两天的-XML解析
你不找到的话,错误就在那里.你找到了错误才会成为财富! Strans XML 解析3要素:1.源xml 格式正常, eg. '<?xml version="1.0" enco ...
- 剑指offer 面试39题
面试39题: 题目:数组中出现次数超过一半的数字 题:数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中 ...
- 分布式计算开源框架Hadoop入门实践(三)
Hadoop基本流程 一个图片太大了,只好分割成为两部分.根据流程图来说一下具体一个任务执行的情况. 在分布式环境中客户端创建任务并提交. InputFormat做Map前的预处理,主要负责以下工作: ...
- PictureBox 双缓冲防止闪屏
Bitmap bm = new Bitmap(this.pbTraffic.Image); BufferedGraphicsContext current = BufferedGraphicsMana ...
- Nginx常用命令(加入系统服务)
nginx 服务器重启命令,关闭 nginx -s reload :修改配置后重新加载生效 nginx -s reopen :重新打开日志文件 nginx -t -c /path/to/nginx.c ...
- pyhton3 sys模块
Python常用模块之sys sys模块提供了一系列有关Python运行环境的变量和函数. 1 ). sys.stdin 标准输入流.2 ).sys.stdout 标准输出流.3 ). sys.std ...
- $《第一行代码:Android》读书笔记——第10章 Android网络编程
(一)WebView的用法 1.WebView也是一个普通的控件. 2.常用用法: WebView webView = (WebView)findViewById(R.id.web_view); we ...