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
 

  

分类:

技术点:

相关文章: