Friday, April 27, 2012

Linux / UNIX: For Loop To Remove Files

How do I use a for loop in Unix to remove files?

You can use the following bash for loop or ksh for loop syntax to delete files using the rm command.

Use a Bash For Loop To Delete Files in Unix

 
for f in /path/to/dir/*.txt
do
# if file, delete it
[ -f "$f" ] && rm "$f"
done
 
See Bash for loop tutorial for more information.

Use a KSH For Loop To Delete Files in Unix

 
for f in /path/to/dir/*.c~; do
# if it is a file, delete it
if [ -f $f ]
then
rm "$f"
fi
done
 
See KSH for loop tutorial for more information.

rm Command with Wild Cards

A better solution is to delete all files using wild cards as follows:
 
rm /path/to/dir/*.txt

No comments:

Post a Comment