Replacing multiple extensions

HI,

I have some csv files with mutiple extensions, I want to remove all the extensions and keep only the .csv extension.

anybody can suggest me how to do this.

source files

1.txt.csv.txt.csv.csv.txt.csv
2.csv.txt.csv.txt.csv.txt
target

1.csv
2.csv

--Wang

% cat testfile
1.txt.csv.txt.csv.csv.txt.csv
2.csv.txt.csv.txt.csv.txt

% cat testfile | while read f; do
  echo mv "$f" "${f%%.*}.csv"
done
mv 1.txt.csv.txt.csv.csv.txt.csv 1.csv
mv 2.csv.txt.csv.txt.csv.txt 2.csv

Remove echo if everything is right. ls *.csv* instead of cat testfile.