for file in /path/to/file1.txt /path/to/file2.txt /path/to/file3.txt
do
# do something on $file
cat "$file"
done
You can directly process all command line args:
for file in $*
do
# do something on $file
[ -f "$file" ][ "$d" != "" ][ "$f" == "start" ][ "$f" == "end" ] && echo "=============================================================="
}
source /usr/local/nixcraft/mgmt/ssh/.keychain/$HOSTNAME-sh
for d in $domains
do
logdata "start" "$d @ $(date)"
[ -d "/home/wwwdata/$d/" ] && { cd "/home/wwwdata/$d/";
/usr/bin/rsync --exclude='cache/cache-*'\
--exclude '.bash_history' \
--exclude '.viminfo' \
--exclude 'cache/*_mutex.lock' \
--exclude 'broken-link-checker*' \
--exclude 'tmp/*'
-a --delete . backup@nasbox.nixcraft.net.in:/raid6/$HOSTNAME/ ;
}
logdata "end" "$d @ $(date)"
done &> $log
[ -f $latest ] && /bin/rm -f $latest
ln -s $log $latest
mail -s "Backup $HOSTNAME" admin@clients.nixcraft.net.in < $latest
#!/bin/bash
export PATH
echo "$PATH"
rename .txt .xml *
for file in *.xml
do
dos2unix "$file"
done