Delete 10 newest files in Linux The code you'd want to include in your script is rm -f $(ls -1t /path/to/your/logs/ | tail -n +11) The -1 (numeric one) option prints each file on a single line, to be safe. The -f option to rm tells it to ignore non-existent files for when ls returns nothing. Or use the below command ls -d -1tr /path/to/folder/* | head -n -10 | xargs -d '\n' rm -f Delete latest 3 files: rm -f $(ls -1t ./ | head -3) Find a folder Just find directories and skip file names pass the -type d option as follows: find / - type d -name "apt" - ls locate httpdocs Gives the time stamp date +%Y%m%d -s "20081128" date +%T -s "11:18:00" Stat file.txt newest=$(find subdir -newer timestamp -printf "%A%p\n" | sort -n | ...