Browse Source

Fun time special cases!

Douglas William Thrift 14 years ago
parent
commit
68d99e2653
1 changed files with 12 additions and 5 deletions
  1. 12 5
      apt-p2p-clean

+ 12 - 5
apt-p2p-clean

@@ -45,7 +45,7 @@ function version()
 }
 
 program=`basename $0`
-version='1.0.1'
+version='1.0.2'
 apt_p2p_cache='/var/cache/apt-p2p/cache'
 _apt_p2p_cache="$apt_p2p_cache"
 apt_archive='/var/cache/apt/archives'
@@ -109,12 +109,19 @@ find "$apt_p2p_cache" -name '*.deb' | (
 	freed=0
 	
 	while read deb; do
-		if [[ ! -f "$apt_archive/${deb##*/}" ]]; then
-			((freed += `du -B 1 $deb | cut -f 1`))
+		_deb="${deb##*/}"
+		_deb="${_deb//%7e/~}"
 
-			echo " ${deb##*/}"
+		if [[ ! -f "$apt_archive/$_deb" ]]; then
+			_deb=`dpkg-deb -W --showformat='${Package}_${Version}_${Architecture}.deb' $deb`
 
-			[[ $execute -eq 1 ]] && rm -f "$deb"
+			if [[ ! -f "$apt_archive/${_deb//:/%3a}" ]]; then
+				((freed += `du -B 1 $deb | cut -f 1`))
+
+				echo " $_deb"
+
+				[[ $execute -eq 1 ]] && rm -f "$deb"
+			fi
 		fi
 	done