Иногда нужно удалить лидирующий пробел (любой символ) в большом количестве файлов.Можно использовать такой скрипт в shell.
for ff in ' *.*';do for FILE in ${ff};do
echo "Trim" "$FILE"|sed 's/^[ ]*//g'
mv -f "$FILE" "`echo "$FILE"|sed 's/^[ ]*//g'`"
done
done
Нужно обратить внимание на то, что имя файла задано в двойных кавычках, вида
for ff in ' *.*';do for FILE in ${ff};do
echo "Trim" "$FILE"|sed 's/^[ ]*//g'
mv -f "$FILE" "`echo "$FILE"|sed 's/^[ ]*//g'`"
done
done
Нужно обратить внимание на то, что имя файла задано в двойных кавычках, вида
"$FILE", это сделано для корректной обработки длинных имен файлов с пробелами в имени.
В конструкции вида
sed 's/^[ ]*//g',
блок ^[ ] обозначает, что нужно искать пробел сначала имени файла.
Коментарі
Дописати коментар