Помогите с сценарием оболочки - переименовать имена файлов (удалить специальные символы) в каталоге? - PullRequest
1 голос
/ 19 июня 2010

У меня есть каталог csv-файлов с пробелами и всевозможными символами. Как мне их переименовать? Следующее дает ошибку.

#! /bin/bash

cd DirectoryName

for file in *.csv; do
    #echo $file
    filename=${file%.*}
    file_clean=${filename//[ ()$+&\.\-\'\,]/_}
    final= "$file_clean.csv"
    mv "$file" $final
done

cd ..

Спасибо! * * 1004

ОБНОВЛЕНИЕ: (Это работает)

#! /bin/bash

cd DirectoryName

for file in *.csv; do
    #echo $file
    filename=${file%.*}
    file_clean=${filename//[ ()$+&\.\-\'\,]/_}
    final= "$file_clean.csv"
    mv "$file" $final
done

cd ..

1 Ответ

2 голосов
/ 19 июня 2010

Конечно, это так.Вы не цитируете подстановки, и ваше назначение на $final неверно.Укажите все варианты замещения и удалите пробел после знака равенства.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...