一個shell指令碼解多個壓縮檔(改別人的代碼)
這個程式核心代碼是有linuxsir.org的tram兄寫的,主要是時限瞭解壓縮檔的功能.我加了一些代碼使他能夠壓縮目錄和解開rar檔案,這個SHELL程式還是很簡單的,我經常用他,將程式的許可權用chmod gou+x filename該為可執行,然後複製到/bin/usr下.這樣就可以使用了.呵呵. 一下就是代碼.
#!/bin/bash
if [ -d $1 ]; then
tar czvf $1.tar.gz $1
echo this is a DIR
exit 0;
fi
UNPACK=1
if [ ${1##*.} = bz2 ] ; then
TEMP=${1%.*}
if [ ${TEMP##*.} = tar ] ; then
tar jxvf $1
UNPACK=$?
echo This is a tar.bz2 package
else
bunzip2 $1
UNPACK=$?
echo This is a bz2 package
fi
fi
# echo ${1##*.}
if [ ${1##*.} = zip ] ; then
unzip $1
UNPACK=$?
fi
if [ ${1##*.} = rar ] ; then
rar x $1
UNPACK=$?
fi
if [ ${1##*.} = gz ] ; then
TEMP=${1%.*}
if [ ${TEMP##*.} = tar ] ; then
tar zxvf $1
UNPACK=$?
echo This is a tar.gz package
else
gunzip $1
UNPACK=$?
echo This is a gz package
fi
fi
if [ ${1##*.} = tar ] ; then
tar xvf $1
UNPACK=$?
echo This is a tar package
fi
if [ $UNPACK = 0 ] ; then
echo Success!
else
echo Maybe it is not a package or the package is damaged?
fi