The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Как преобразовать имена файлов из верхнего регистра в нижний
  for i in `ls`; do mv "$i" `echo "$i" | tr "[:upper:]" "[:lower:]"`; done
 
28.06.2002 , Автор: lavr
Ключи: convert, file / Лицензия: CC-BY
Раздел:    Корень / Программисту и web-разработчику / Shell / Готовые скрипты

Обсуждение [ RSS ]
  • 1.1, BaT (?), 22:19, 09/07/2002 [ответить]  
  • +/
    Либо в MC выделить все нужные файлы и в качестве приемника указать:

    \L*

    Еще действуют \U, \u, \l, как в Perl'e.

     
  • 1.2, catap (?), 11:37, 18/10/2005 [ответить]  
  • +/
    с локалью ru_RU.UTF-8 русские имена не работают (tr не считает буквы верхнего регистра за верхней, а нижнего за нижний, да помоему вообще она не считает их за буквы :( )
     
  • 1.3, dsl (?), 09:42, 27/03/2006 [ответить]  
  • +/
    #!/usr/bin/perl

    use encoding 'utf8';

    while(<>){ print lc; }

     
  • 1.4, f0b0s (?), 23:27, 12/04/2008 [ответить]  
  • +/
    афигительно.
    сегодня ровно такой скриптик стругал в 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?

     
     
  • 2.5, cub0 (??), 16:39, 20/10/2008 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >C
    >D
    >E
    >X
    >Y
    >Z
    >
    >и mv ессно не сработает.
    >
    >any ideas?

    Тогда закавычить:

    for i in "'ls'"; do echo "$i"; done

     
     
  • 3.6, terr0rist (??), 18:28, 30/03/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Не пойдёт. Будет одна большая строка.

    Вообще, зачем ls?

    # for i in *; do ...

    либо поиздеваться над мозгом:

    # ls | while read i; do ...

     

  • 1.7, max (??), 20:33, 21/11/2010 [ответить]  
  • +/
    for i in $( ls | grep [A-Z] ); do mv -i $i 'echo $i | tr ‘A-Z’ ‘a-z’'; done
    переименует все файлы в нижний регистр в каталоге
     
  • 1.8, shaman (??), 16:30, 11/09/2013 [ответить]  
  • +/
    ls | while read i; do echo mv \"${i}\" \"$(echo ${i} | tr [:upper:] [:lower:])\"; done
     
  • 1.9, shaman (??), 17:42, 11/09/2013 [ответить]  
  • +/
    find -type d | sed "/\.$/d" | while read i; do echo mv \"${i}\" \"$(echo ${i} | tr [:upper:] [:lower:])\"; done
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру