Подскажите нужно чтоб извлекал файлы с расширением только csv
#!/bin/bash
# собрать файлы в одну директорию из
# директории с поддериекториями;
# файлы с одинаковыми именами должны
# быть переименованы
# rename: присоединяет char к имени из filename
# (до расширения, если оно есть)
# rename(filename, char) -> <name><char>[<ext>]
rename()
{
local filename=$1 char=$2
echo "$filename" | sed 's/^\([^.]*\)/\1'$char'/'
}
[ $# -eq 2 ] || {
echo "usage: `basename $0` srcdir save > re" 1>&2
exit 1
}
srcdir=$1
dstdir=$2
[ -d "$srcdir" -a -d "$dstdir" ] || {
echo "error: dir doesn't exist" 1>&2
exit 1
}
find "$srcdir" -type f | sort | while read line; do
srcfile="$line"
dstfile="$dstdir/`basename "$line"`"
while [ -f "$dstfile" ]; do
dstfile=`rename "$dstfile" "_"`
done
echo "moving: $srcfile -> $dstfile"
/bin/mv "$srcfile" "$dstfile" || {
echo "error: can't move $srcfile to $dstfile" 1>&2
exit 1
}
done