Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Yuriy Kaminskiy                      2:5020/517.21  13 Jun 2001  16:00:13
 To : Andy Shevchenko
 Subject : Re: ?
 -------------------------------------------------------------------------------- 
 
  Hello,  Andy! 
 
 >>>>> On 18:27 12/6/2001, Andy Shevchenko <2:465/192> writes:
  AK> А как переменовать файлы вида: "Гвв:*.txt" в "*.txt" ???
  AS> скриптом: ls "Гвв:*.txt" | sed -e 's/Гвв://' | while read x do mv
 
  Мда. И он долго будет пытаться переименовать _один_ несуществующий
 файл Гвв:\*.txt в \*.txt. Hint: ls не делает glob, а жрет то, что ему
 передает sh. А то, что находиться в кавычках, sh не раскрывает.
  Решение на чистом bash/zsh:
  for f in Гвв:*.txt; do mv "$f" "${f#Гвв:}";done
  Короткое решение (с применением rename из perl-x.y.z/eg/*):
  rename s/^Гвв:// Гвв:*.txt
  Решение для более сложных случаев, но без использования perl:
  for f in Гвв:*.txt; do mv "$f" "`echo "$f"|sed 's/^Гвв://'`";done
  Для рекурсивных замен:
  find -depth -name 'Гвв:*.txt'|while read f; do mv "$f"  "${f/\/Гвв://}";done
  #    ^^^^^^ man find
  Осторожно: последнее решение неустойчиво по отношению к именам с
 переводами строк.
 
  AS> -f "Гвв:${x}" $x done
 
 -- 
 Yuriy Kaminskiy.
 PS info bash, info sed, info find, man perl
 --- Gnus v5.2.25/XEmacs 19.14
  * Origin: none (2:5020/517.21@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 ?   Anatoliy Kulakov   11 Jun 2001 15:53:54 
 Re: ?   Andy Shevchenko   12 Jun 2001 19:27:33 
 Re: ?   Eugeni Dodonov   12 Jun 2001 20:17:51 
 Re: ?   Dennis Vshivkov   13 Jun 2001 16:41:16 
 Re: ?   Yuriy Kaminskiy   13 Jun 2001 16:00:13 
 Re: ?   Yuriy Kaminskiy   13 Jun 2001 16:04:32 
 ?   Alexander S Aganichev   13 Jun 2001 06:42:43 
 Re: ?   Yuriy Kaminskiy   15 Jun 2001 15:14:29 
Архивное /ru.linux/17427259bdd47.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional