URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 827
[ Назад ]
Исходное сообщение
"Раздел полезных советов: Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено auto_tips , 09-Июл-02 22:19
for i in 'ls'; do mv "$i" 'echo "$i" | tr "[:upper:]" "[:lower:]"'; done
URL:
Обсуждается: http://www.opennet.me/tips/info/283.shtml
Содержание
- Как преобразовать имена файлов из верхнего регистра в нижний,BaT, 22:19 , 09-Июл-02
- Как преобразовать имена файлов из верхнего регистра в нижний,catap, 11:37 , 18-Окт-05
- Как преобразовать имена файлов из верхнего регистра в нижний,dsl, 09:42 , 27-Мрт-06
- Как преобразовать имена файлов из верхнего регистра в нижний,f0b0s, 23:27 , 12-Апр-08
- Как преобразовать имена файлов из верхнего регистра в нижний,cub0, 16:39 , 20-Окт-08
- Как преобразовать имена файлов из верхнего регистра в нижний,terr0rist, 18:28 , 30-Мрт-09
- Как преобразовать имена файлов из верхнего регистра в нижний,max, 20:33 , 21-Ноя-10
- Как преобразовать имена файлов из верхнего регистра в нижний,shaman, 16:30 , 11-Сен-13
- Как преобразовать имена файлов из верхнего регистра в нижний,shaman, 17:42 , 11-Сен-13
Сообщения в этом обсуждении
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено BaT , 09-Июл-02 22:19
Либо в MC выделить все нужные файлы и в качестве приемника указать:\L*
Еще действуют \U, \u, \l, как в Perl'e.
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено catap , 18-Окт-05 11:37
с локалью ru_RU.UTF-8 русские имена не работают (tr не считает буквы верхнего регистра за верхней, а нижнего за нижний, да помоему вообще она не считает их за буквы :( )
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено dsl , 27-Мрт-06 09:42
#!/usr/bin/perluse encoding 'utf8';
while(<>){ print lc; }
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено f0b0s , 12-Апр-08 23:27
афигительно.
сегодня ровно такой скриптик стругал в FreeBSD/bashниработает нифига
ибо for i in 1 2 3; do echo $i; done
выведет
1
2
3
так и тут.
в папке с файлами A B C, C D E, X Y Z (содержащее пробелы) выводит
A
B
C
C
D
E
X
Y
Z
и mv ессно не сработает.
any ideas?
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено cub0 , 20-Окт-08 16:39
>[оверквотинг удален]
>C
>D
>E
>X
>Y
>Z
>
>и mv ессно не сработает.
>
>any ideas? Тогда закавычить:
for i in "`ls`"; do echo "$i"; done
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено terr0rist , 30-Мрт-09 18:28
Не пойдёт. Будет одна большая строка.Вообще, зачем ls?
# for i in *; do ...
либо поиздеваться над мозгом:
# ls | while read i; do ...
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено max , 21-Ноя-10 20:33
for i in $( ls | grep [A-Z] ); do mv -i $i `echo $i | tr ‘A-Z’ ‘a-z’`; done
переименует все файлы в нижний регистр в каталоге
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено shaman , 11-Сен-13 16:30
ls | while read i; do echo mv \"${i}\" \"$(echo ${i} | tr [:upper:] [:lower:])\"; done
"Как преобразовать имена файлов из верхнего регистра в нижний"
Отправлено shaman , 11-Сен-13 17:42
find -type d | sed "/\.$/d" | while read i; do echo mv \"${i}\" \"$(echo ${i} | tr [:upper:] [:lower:])\"; done