泰山神 发表于 2018-8-30 06:41:20

软件包清理的shell脚本

#!/bin/bash  
#列出指定yum源中每种软件除了最新三个版本软件包外所有的软件包
  
if [ -n "$1" ]                                          #对$1进行判断,如果为空,什么都不做,如果非空,向下执行
  
then
  
      ls $1| grep .rpm$ > /tmp/template             #将路径列出的文件进行.rpm过滤,软件包名存到临时文件/tmp/template中
  
      rm -fr /tmp/diffrpm &> /dev/null                #创建目录时先进行删除,防止报错
  
      mkdir /tmp/diffrpm
  
      lines=$(cat /tmp/template | wc -l)            #统计/tmp/template的行数,即软件包个数存到变量lines中
  
      for ((i=1;i> /tmp/diffrpm/$rpmname   #将各个软件包名依次存到/tmp/diffrpm/目录下以rpmname为文件名的文件中,以此达到区分软件包的目的
  
      done
  
      value=($(ls /tmp/diffrpm))                      #设置数组value存放/tmp/diffrpm/目录下的各个文件名
  
      number=${#value
[*]}                           #将/tmp/diffrpm/目录下文件的个数存到变量number中
  
      for ((j=0;j
页: [1]
查看完整版本: 软件包清理的shell脚本