AIX系統自身是沒有解壓ZIP文件的,但在AIX安裝oracle數據庫服務器的話,在$ORACLE_HOME/bin路徑下方卻有unzip命令,可以解壓ZIP文件。
一、shell腳本
之前的版本有問題,現在將shell腳本修改如下。原因是Unix系統下unzip命令不能批量解壓,但是在windows平台是可以的。
#!/bin/ksh
#設置環境變量
export ORACLE_BASE=/home/oracle
export ORACLE_HOME=$ORACLE_BASE/product/db_1
export PATH=$PATH:$ORACLE_HOME/bin
#Oracle自帶unzip命令,在$OARCLE_HOME/bin路徑下有unzip命令
#進行解壓的文件路徑
file_path=`pwd` #當前路徑
#設置將文件解壓到的目標路徑
target_path=$file_path/test
#切換路徑
cd $file_path
#統計file_path下ZIP文件個數
file_number=`ls -l |grep zip$ |wc -l`
#檢查當前路徑下是否存在ZIP文件
if [ $file_number gt 0 ] ;then
#將文件名放到file_name.conf文件中
ls -al | grep zip$ | awk '{print $9 }' > file_name.conf
while read column
do
#將文件解壓在當前路徑下
unzip $column
#將文件解壓在指定路徑下
unzip -o -d $target_path $column
done < $file_path/file_name.conf
else
#否則直接退出
exit 0
fi
#刪除原ZIP包
rm -f *.zip
exit 0
#備注 此腳本還有一個小BUG,如果zip文件名里含有空格,會有問題,這個后期將進行完善。
二、UNZIP命令
UNZIP常用參數選項:
-d <目錄> 指定文件解壓縮后所要存儲的目錄。
-x <文件> 指定不要處理.zip壓縮文件中的哪些文件。
-o 不必先詢問用戶,unzip執行后覆蓋原有文件。
-v 執行是時顯示詳細的信息。
-l 顯示壓縮文件內所包含的文件。
-n 解壓縮時不要覆蓋原有的文件。
三、手工安裝unzip工具包
下載地址:
ftp://ftp.software.ibm.com/aix/freeSoftware/aixtoolbox/RPMS/ppc/unzip/unzip-5.51-1.aix5.1.ppc.rpm
安裝方法:
使用root用戶安裝unzip,命令:
rpm -ivh unzip-5.51-1.aix5.1.ppc.rpm
