ZT - 對話 UNIX: UNIX 高手的重大秘密(5)
與副檔名無關的自動解壓
鑑於 Internet 上有如此眾多的程式碼,您可能每天都會下載數十個檔案。可能會出現這樣的情況:所有那些檔案都使用不同的方式打包 — 有的是 ZIP 檔案,有的是 RAR 檔案,還有很多是 tarball 檔案,儘管每個包都使用不同的實用程式壓縮。記住如何解壓縮和擴充套件每種包格式將會使人精疲力盡。那麼,為何不在單個命令中完成所有那些任務呢?下面這個函式在許多樣例點檔案中廣泛可用:
ex () {
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xjf $1 ;;
*.tar.gz) tar xzf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) rar x $1 ;;
*.gz) gunzip $1 ;;
*.tar) tar xf $1 ;;
*.tbz2) tar xjf $1 ;;
*.tgz) tar xzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*) echo "'$1' cannot be extracted via extract()" ;;
esac
else
echo "'$1' is not a valid file"
fi
}
這個函式 ex 擴充套件了 11 種檔案格式;如果要處理其他包型別,該函式還可以擴充套件。一旦定義 — 例如,在一個 shell 啟動檔案中 — 就可以簡單地鍵入 ex somefile,其中 somefile 以以下一種已命名擴充套件結束:
$ ls
source
$ tar czf source.tgz source
$ ls -1
source
source.tgz
$ rm -rf source
$ ex source.tgz
$ ls -1
source
source.tgz
順便說一下,如果您將今天下載的檔案放錯了位置,可以執行 find 來查詢它:
$ find ~ -type f -mtime 0
命令 -type f 查詢純文字檔案,-mtime 0 查詢自當天午夜以來建立的檔案。[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16896827/viewspace-1036456/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ZT - 對話 UNIX: UNIX 高手的重大秘密(6)
- ZT - 對話 UNIX: UNIX 高手的重大秘密(4)
- ZT - 對話 UNIX: UNIX 高手的重大秘密(3)
- ZT - 對話 UNIX: UNIX 高手的重大秘密(2)
- ZT - 對話 UNIX: UNIX 高手的重大秘密(1)
- UNIX 技巧: UNIX 高手的另外 10 個習慣
- ZT - UNIX 網路協議的深度分析(5)協議
- UNIX 高手的 10 個習慣
- Unix 高手的另外 10 個習慣
- dos2unix, unix2dos 對應的命令(轉)
- ZT - UNIX 網路協議的深度分析(3)協議
- ZT - UNIX 網路協議的深度分析(2)協議
- ZT - UNIX 網路協議的深度分析(1)協議
- Unix 高階使用者命令 lsof 和 fuser (zt)
- UNIX的架構及UNIX/Windows演進圖架構Windows
- ICAClient for UNIXclient
- Unix哲學(Unix程式設計藝術)程式設計
- Unix程式設計藝術,Unix哲學程式設計
- 我希望早幾年知道的5個Unix命令
- unix的儲存概念
- Unix pthreadthread
- Overview of Unix ResourcesView
- UNIX VI命令
- 常用UNIX命令
- unix命令1
- 各類unix和linux密碼丟失解決方法(zt)Linux密碼
- 《Unix 網路程式設計》15:Unix 域協議程式設計協議
- SCO UNIX5 的幾個主要系統程式(轉)
- 各種unix/linux平臺下iostat與vmstst說明ztLinuxiOS
- 在SCO UNIX系統中使用另一unix硬碟(轉)硬碟
- 閱讀原始碼---與高手對話原始碼
- 關於UNIX及類UNIX下壓縮和解壓的命令簡介
- unix中dmesg的應用
- 獻給UNIX的初學者
- hp unix cluster使用的命令
- Unix原則-KISS
- UNIX基本命令
- unix date命令解疑