我有一个脚本来删除目录中的低版本 jars 文件。
#!/bin/bash
#Script to remove lower version jar files.
for PREFIX in `ls *.jar|sed 's/-[0-9\.\0-9\.a-zA-Z]*\.jar//g'|uniq -d`; do
for FILE in `ls -r ${PREFIX}*|sed '1d'`; do
echo " $FILE"
rm $FILE
done
done
它有一个错误。
我在目录中有以下重复 jar 文件列表。
xyz-1.1.jar
xyz-1.1.1.jar
abc-1.6.jar
abc-1.3.jar
abc-xyz-pqr-1.9.6.jar
abc-xyz-pqr-1.9.2.jar
xyz-tom.jar
xyz-tom-20120423.jar
xyz-tom-20120410.jar
abc-toolkit-1.6-runtime-5.2.0.jar
abc-toolkit-1.6-runtime-5.0.0.jar
该错误与 xyz 模式 jar 文件有关。漏洞:
- 脚本正在删除 xyz-1.1.1.jar 文件而不是 xyz-1.1.jar
- 脚本正在删除 xyz-tom-20120423.jar 和 xyz-tom-20120410.jar 文件。