How about: --- 8< cut here --- #!/bin/bash pushd /cygdrive/d/pc1 for file in *.csv; do if [ "${file##new_}" != "${file}" ]; then next; fi cat "${file}" | uniq > "new_${file}" done popd -------------------
I Guess bas is like perl: TIMTOWTDI ;) > Ronald Landheer-Cieslak wrote on Wednesday, November 26, 2003 12:53 PM: > > for i in /cygdrive/d/pc1/*.csv; do > cat $i | uniq > /cygdrive/d/pc1/newfilename.csv > done > > This will work once, because the new files won't be there > yet. After that, the *.csv will pick up the new files as well.. Apart from that, you will overwrite the new file each time ;-) $ for i in /cygdrive/d/pc1/*.csv; do cat $i | uniq > /cygdrive/d/pc1/$1.new; done Now you avoid that your new files are picked also and all new files have new names (a .new appended). Other approaches to do something like that: find /cygdrive/d/pc1/*.csv -exec uniq \{} \{}.new \; refer the manuals ... :) -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/ -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/