【shell 指令碼】檢視*.gz 檔案的內容
#!/bin/bash
# zmore
#使用'more'來檢視gzip檔案
NOARGS=65
NOTFOUND=66
NOTGZIP=67
if [ $# -eq 0 ] # 與if [ -z "$1" ]效果相同
# $1是可以存在的, 可以為空, 如: zmore "" arg2 arg3
then
echo "Usage: `basename $0` filename" >&2
# 錯誤訊息輸出到stderr.
exit $NOARGS
# 返回65作為指令碼的退出狀態的值(錯誤碼).
fi
filename=$1
if [ ! -f "$filename" ] # 將$filename引用起來, 這樣允許其中包含空白字元.
then
echo "File $filename not found!" >&2
# 錯誤訊息輸出到stderr.
exit $NOTFOUND
fi
if [ ${filename##*.} != "gz" ]
# 在變數替換中使用中括號結構.
then
echo "File $1 is not a gzipped file!"
exit $NOTGZIP
fi
zcat $1 | more
# 使用過濾命令'more.'
# 當然, 如果你願意, 也可以使用'less'.
exit $? # 指令碼將把管道的退出狀態作為返回值.
# 事實上, 也不一定非要加上"exit $?", 因為在任何情況下,
# 指令碼都會將最後一條命令的退出狀態作為返回值.
=====測試
root@client.example.com ~/yang # ./zmore.sh grep.data.gz
48 Dec 3BC1977 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
483 may 5PA1998 USP 37.00 KVM9D 644
216 sept 3ZL1998 USP 86.00 KVM9E 234
# zmore
#使用'more'來檢視gzip檔案
NOARGS=65
NOTFOUND=66
NOTGZIP=67
if [ $# -eq 0 ] # 與if [ -z "$1" ]效果相同
# $1是可以存在的, 可以為空, 如: zmore "" arg2 arg3
then
echo "Usage: `basename $0` filename" >&2
# 錯誤訊息輸出到stderr.
exit $NOARGS
# 返回65作為指令碼的退出狀態的值(錯誤碼).
fi
filename=$1
if [ ! -f "$filename" ] # 將$filename引用起來, 這樣允許其中包含空白字元.
then
echo "File $filename not found!" >&2
# 錯誤訊息輸出到stderr.
exit $NOTFOUND
fi
if [ ${filename##*.} != "gz" ]
# 在變數替換中使用中括號結構.
then
echo "File $1 is not a gzipped file!"
exit $NOTGZIP
fi
zcat $1 | more
# 使用過濾命令'more.'
# 當然, 如果你願意, 也可以使用'less'.
exit $? # 指令碼將把管道的退出狀態作為返回值.
# 事實上, 也不一定非要加上"exit $?", 因為在任何情況下,
# 指令碼都會將最後一條命令的退出狀態作為返回值.
=====測試
root@client.example.com ~/yang # ./zmore.sh grep.data.gz
48 Dec 3BC1977 LPSX 68.00 LVX2A 138
483 Sept 5AP1996 USP 65.00 LVX2C 189
47 Oct 3ZL1998 LPSX 43.00 KVM9D 512
219 dec 2CC1999 CAD 23.00 PLV2C 68
484 nov 7PL1996 CAD 49.00 PLV2C 234
483 may 5PA1998 USP 37.00 KVM9D 644
216 sept 3ZL1998 USP 86.00 KVM9E 234
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22664653/viewspace-690016/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 用shell指令碼合併多個檔案內容指令碼
- git檢視檔案內容Git
- 檢視控制檔案內容
- 檢視檔案內容的特殊方法
- Linux如何檢視檔案包含內容?常用指令有哪些?Linux
- Shell指令碼匯入外部指令碼內容指令碼
- git檢視指定提交檔案的內容Git
- 檢視檔案內容的特殊方法(轉)
- linux 檢視檔案內容的命令Linux
- Linux 檢視檔案內容——bat 命令LinuxBAT
- 檢視檔案內容時,附加行號
- gz檔案檢視,syslog系統壓縮的
- iOS使用shell指令碼注入混淆內容iOS指令碼
- 選擇性地檢視檔案的方法 head tail sed 檢視檔案部分內容 (轉)AI
- Linux檔案內容檢視相關命令Linux
- Git檢視暫存區index檔案內容GitIndex
- Linux 檔案內容檢視工具介紹Linux
- 常用的7個Linux檔案內容檢視命令!Linux
- 透過shell指令碼檢視procedure的資訊指令碼
- 透過shell指令碼檢視package的資訊指令碼Package
- 通過shell指令碼檢視procedure的資訊指令碼
- 通過shell指令碼檢視package的資訊指令碼Package
- [android]快速檢視apk內androidmanifest檔案內容AndroidAPK
- goldengate trail檔案內容檢視工具logdumpGoAI
- Linux檢視檔案內容常用命令Linux
- Shell指令碼 – 檢視網路介面資訊指令碼
- 透過shell指令碼檢視鎖資訊指令碼
- 通過shell指令碼檢視鎖資訊指令碼
- Shell指令碼 | 抓取log檔案指令碼
- 11gR2 OCRDUMP檢視OCR/OLR檔案的內容
- Linux常用命令!如何檢視檔案內容?Linux
- 【Linux】檢視二進位制檔案內容_hexdumpLinux
- Linux基楚操作指引【檢視版本、檢視路徑、檢視內容、編輯檔案】Linux
- 刪除指定資料夾的檔案內容的sh指令碼指令碼
- grep、sed批量替換檔案內容shell
- 如何使用python指令碼定時清空檔案內容?Python指令碼
- shell指令碼之批次清空檔案指令碼
- 逐行顯示檔案內容並允許修改的DCL指令碼指令碼