I do not know bash so I had to do a little research.
This worked for me, I had to add the echo to know what was what and remove the file name from the wc command.
Code:
#!/bin/bash
counter=2
ls /boot/ | grep vmlinuz | sed 's@vmlinuz-@linux-image-@g' | grep -v `uname -r ` > /tmp/kernelList
numberOfExtraKernels=`wc -l /tmp/kernelList | awk '{print $1}'`
for l in `cat /tmp/kernelList`
do
if [ "$counter" -lt "$numberOfExtraKernels" ]
echo "$l", "$counter", "$numberOfExtraKernels"
then
aptitude remove $l
let "counter +=1"
fi
done
rm -f /tmp/kernelList
update-grub
When I ran it with counter =1 it deleted all but 1, so now I cannot test with counter =2.
Bookmarks