Попробуйте этот скрипт (поместите его в папку head).
#!/bin/bash
echo New dimension?
read dimension
initialDimension=$(du -sk | cut -f1 -d ' ') #Find initial dimension
while [ "$(du -sk | cut -f1 -d ' ')" -gt $dimension ] #While the dimension of this
#Directory is greater then $dimension (inputted before)
do
echo Finding file
#This let you find the oldest file name:
uselessChars=$(find -type f -printf '%T+ %p\n' | sort | head -n 1 | cut -d ' ' -f 1)
oldestFile=$(find -type f -printf '%T+ %p\n' | sort |head -n 1)
oldestFile=${oldestFile#$uselessChars}; #Remove useless chars
oldestFile=${oldestFile# } #Remove useless space
echo " Found: $(find -type f -printf '%T+ %p\n' | sort | head -n 1)" #Print complete path
$(rm "$oldestFile") #Remove the file
echo Removed $oldestFile #Print the result
done
#The result:
echo Done
echo Initial Dimension: $initialDimension
echo Final Dimension: $(du -sk | cut -f1 -d ' ')
я думаю, что эту задачу можно было бы облегчить с помощью Python, но я хотел попробовать написать ее на bash.
Многие вещи можно было бы сделать намного лучше, но это работает.