* Re: [Comm] Поиск и замена @ 2005-04-19 12:20 ` Eugene A. Suchkov 2005-04-19 12:32 ` Alexey Rusakov 1 sibling, 0 replies; 19+ messages in thread From: Eugene A. Suchkov @ 2005-04-19 12:20 UTC (permalink / raw) To: community Hi, Дорогов Николай! You wrote 19.04.2005 16:20: > Подскажите чем из стандартного можно > в большом количестве текстовых файлов произвести замену одной строки на другую, > желательно в консоли и с рекурсией по вложенным папкам. sed -- With best regards Eugene A. Suchkov (a.k.a CityHawk) ICQ 177787156 http://www.livejournal.com/users/suchkoff/ ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Поиск и замена 2005-04-19 12:20 ` [Comm] Поиск и замена Eugene A. Suchkov @ 2005-04-19 12:32 ` Alexey Rusakov 2005-04-19 12:51 ` Дорогов Николай 1 sibling, 1 reply; 19+ messages in thread From: Alexey Rusakov @ 2005-04-19 12:32 UTC (permalink / raw) To: community On 19.04.2005 16:20, Дорогов Николай wrote: > Подскажите чем из стандартного можно > в большом количестве текстовых файлов произвести замену одной строки на > другую, > желательно в консоли и с рекурсией по вложенным папкам. Помнится, я для таких целей пользовался rpl (apt-get install rpl), причём когда та же проблема была на SuSE, пришлось притащить пакет из ALT - родного не нашёл. Так что стандартным я это назвать не могу и присоединяюсь к предыдущему оратору - sed. -- Alexey "Ktirf" Rusakov ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Поиск и замена 2005-04-19 12:32 ` Alexey Rusakov @ 2005-04-19 12:51 ` Дорогов Николай 2005-04-19 12:52 ` Alexey Rusakov 2005-04-19 12:55 ` [Comm] " Nick S. Grechukh 0 siblings, 2 replies; 19+ messages in thread From: Дорогов Николай @ 2005-04-19 12:51 UTC (permalink / raw) To: community > On 19.04.2005 16:20, Дорогов Николай wrote: > > Подскажите чем из стандартного можно > > в большом количестве текстовых файлов произвести замену одной строки на > > другую, > > желательно в консоли и с рекурсией по вложенным папкам. > Помнится, я для таких целей пользовался rpl (apt-get install rpl), > причём когда та же проблема была на SuSE, пришлось притащить пакет из > ALT - родного не нашёл. Так что стандартным я это назвать не могу и > присоединяюсь к предыдущему оратору - sed. Как я понял из man, sed не меняет исходный файл а выводит данные в стандартный вавод. Есть ли команды которые позволяют делать замены прям в том файле который читается? > > -- > Alexey "Ktirf" Rusakov > _______________________________________________ > Community mailing list > Community@altlinux.ru > https://lists.altlinux.ru/mailman/listinfo/community ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Поиск и замена 2005-04-19 12:51 ` Дорогов Николай @ 2005-04-19 12:52 ` Alexey Rusakov 2005-04-19 13:08 ` [Comm] [JT] " Michael Isachenkov 2005-04-19 12:55 ` [Comm] " Nick S. Grechukh 1 sibling, 1 reply; 19+ messages in thread From: Alexey Rusakov @ 2005-04-19 12:52 UTC (permalink / raw) To: community On 19.04.2005 16:51, Дорогов Николай wrote: > Как я понял из man, sed не меняет исходный файл а выводит данные в > стандартный вавод. > Есть ли команды которые позволяют делать замены прям в том файле который > читается? Используйте стандартную схему с выводом во временный файл и его последующим переименованием. Оно и безопаснее, и проще, и надёжнее. -- Alexey "Ktirf" Rusakov ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] [JT] Поиск и замена 2005-04-19 12:52 ` Alexey Rusakov @ 2005-04-19 13:08 ` Michael Isachenkov 2005-04-19 13:12 ` Re[2]: " Anton Gorlov ` (3 more replies) 0 siblings, 4 replies; 19+ messages in thread From: Michael Isachenkov @ 2005-04-19 13:08 UTC (permalink / raw) To: community >> Используйте стандартную схему с выводом во временный файл и его > последующим переименованием. Оно и безопаснее, и проще, и надёжнее. Был, впрочем, такой случай. Один мой знакомый попросил другого моего знакомого сделать скрипт, который переводит все имена файлов в lowercase рекурсивно, начиная с текущей директории. Как вы думаете, каков был результат? :-] -- Best regards, Michael Isachenkov ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re[2]: [Comm] [JT] Поиск и замена 2005-04-19 13:08 ` [Comm] [JT] " Michael Isachenkov @ 2005-04-19 13:12 ` Anton Gorlov 2005-04-19 13:18 ` Michael Isachenkov 2005-04-19 13:13 ` Olvin ` (2 subsequent siblings) 3 siblings, 1 reply; 19+ messages in thread From: Anton Gorlov @ 2005-04-19 13:12 UTC (permalink / raw) To: community Здравствуйте, Michael. Вы писали 19 апреля 2005 г., 17:08:24: > Был, впрочем, такой случай. > Один мой знакомый попросил другого моего знакомого сделать > скрипт, который переводит все имена файлов в lowercase рекурсивно, > начиная с текущей директории. > Как вы думаете, каков был результат? :-] Э.... размер винта стал lowercase? ;-) А без шуток -всё что есть на винте стало в нижнем регистре? -- С уважением, Anton mailto:Pnz.Stalker@mail.ru ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: Re[2]: [Comm] [JT] Поиск и замена 2005-04-19 13:12 ` Re[2]: " Anton Gorlov @ 2005-04-19 13:18 ` Michael Isachenkov 0 siblings, 0 replies; 19+ messages in thread From: Michael Isachenkov @ 2005-04-19 13:18 UTC (permalink / raw) To: community >> А без шуток -всё что есть на винте стало в нижнем регистре? Именно так. :)) -- Best regards, Michael Isachenkov ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] [JT] Поиск и замена 2005-04-19 13:08 ` [Comm] [JT] " Michael Isachenkov 2005-04-19 13:12 ` Re[2]: " Anton Gorlov @ 2005-04-19 13:13 ` Olvin 2005-04-19 13:21 ` Alexey Rusakov 2005-04-19 14:53 ` [Comm] " Michael Shigorin 3 siblings, 0 replies; 19+ messages in thread From: Olvin @ 2005-04-19 13:13 UTC (permalink / raw) To: community Michael Isachenkov wrote: >>>Используйте стандартную схему с выводом во временный файл и его >>последующим переименованием. Оно и безопаснее, и проще, и надёжнее. > Был, впрочем, такой случай. > Один мой знакомый попросил другого моего знакомого сделать скрипт, который переводит все имена файлов в lowercase рекурсивно, начиная с текущей директории. > Как вы думаете, каков был результат? :-] MAKEDEV пошёл гулять лесом? :) ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] [JT] Поиск и замена 2005-04-19 13:08 ` [Comm] [JT] " Michael Isachenkov 2005-04-19 13:12 ` Re[2]: " Anton Gorlov 2005-04-19 13:13 ` Olvin @ 2005-04-19 13:21 ` Alexey Rusakov 2005-04-19 14:02 ` Michael Isachenkov 2005-04-19 14:53 ` [Comm] " Michael Shigorin 3 siblings, 1 reply; 19+ messages in thread From: Alexey Rusakov @ 2005-04-19 13:21 UTC (permalink / raw) To: community On 19.04.2005 17:08, Michael Isachenkov wrote: > Был, впрочем, такой случай. > Один мой знакомый попросил другого моего знакомого сделать скрипт, который переводит все имена файлов в lowercase рекурсивно, начиная с текущей директории. > Как вы думаете, каков был результат? :-] Что-то мне подсказывает, что он переименовывал имя каталога, после чего пытался войти в него по старому не-lowercase имени. Или всё-таки правда MAKEDEV пошёл гулять лесом? :) -- Alexey "Ktirf" Rusakov ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] [JT] Поиск и замена 2005-04-19 13:21 ` Alexey Rusakov @ 2005-04-19 14:02 ` Michael Isachenkov 0 siblings, 0 replies; 19+ messages in thread From: Michael Isachenkov @ 2005-04-19 14:02 UTC (permalink / raw) To: community >> MAKEDEV пошёл гулять лесом? :) И он тоже. :) наряду с /etc/X11 и т.п. :) -- Best regards, Michael Isachenkov ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Comm] Re: [JT] Поиск и замена 2005-04-19 13:08 ` [Comm] [JT] " Michael Isachenkov ` (2 preceding siblings ...) 2005-04-19 13:21 ` Alexey Rusakov @ 2005-04-19 14:53 ` Michael Shigorin 2005-04-19 16:45 ` Michael Isachenkov 2005-04-20 13:28 ` Andrey Rahmatullin 3 siblings, 2 replies; 19+ messages in thread From: Michael Shigorin @ 2005-04-19 14:53 UTC (permalink / raw) To: community On Tue, Apr 19, 2005 at 05:08:24PM +0400, Michael Isachenkov wrote: > Один мой знакомый попросил другого моего знакомого сделать > скрипт, который переводит все имена файлов в lowercase > рекурсивно, начиная с текущей директории. > Как вы думаете, каков был результат? :-] Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Re: [JT] Поиск и замена 2005-04-19 14:53 ` [Comm] " Michael Shigorin @ 2005-04-19 16:45 ` Michael Isachenkov 2005-04-19 17:06 ` Michael Shigorin 2005-04-20 13:28 ` Andrey Rahmatullin 1 sibling, 1 reply; 19+ messages in thread From: Michael Isachenkov @ 2005-04-19 16:45 UTC (permalink / raw) To: community >> > Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) Михаил, вы единственный оптимист в community@! :) -- Best regards, Michael Isachenkov ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Comm] Re: [JT] Поиск и замена 2005-04-19 16:45 ` Michael Isachenkov @ 2005-04-19 17:06 ` Michael Shigorin 2005-04-19 17:10 ` Michael Isachenkov 2005-04-19 21:32 ` Olvin 0 siblings, 2 replies; 19+ messages in thread From: Michael Shigorin @ 2005-04-19 17:06 UTC (permalink / raw) To: community On Tue, Apr 19, 2005 at 08:45:52PM +0400, Michael Isachenkov wrote: > > Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) > Михаил, вы единственный оптимист в community@! :) Да не, просто в своё время споткнулся и узнал про find -depth. :) -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Re: [JT] Поиск и замена 2005-04-19 17:06 ` Michael Shigorin @ 2005-04-19 17:10 ` Michael Isachenkov 2005-04-19 21:32 ` Olvin 1 sibling, 0 replies; 19+ messages in thread From: Michael Isachenkov @ 2005-04-19 17:10 UTC (permalink / raw) To: community >> > > Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) > > Михаил, вы единственный оптимист в community@! :) > > Да не, просто в своё время споткнулся и узнал про find -depth. :) В случае моих знакомых все было гораздо готичнее. find'ом они не пользовались. :) -- Best regards, Michael Isachenkov ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Re: [JT] Поиск и замена 2005-04-19 17:06 ` Michael Shigorin 2005-04-19 17:10 ` Michael Isachenkov @ 2005-04-19 21:32 ` Olvin 2005-04-20 12:09 ` Michael Shigorin 1 sibling, 1 reply; 19+ messages in thread From: Olvin @ 2005-04-19 21:32 UTC (permalink / raw) To: community Michael Shigorin wrote: >>>Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) >>Михаил, вы единственный оптимист в community@! :) > Да не, просто в своё время споткнулся и узнал про find -depth. :) Мне кажется, что -depth тут не сильно помогло бы :) ^ permalink raw reply [flat|nested] 19+ messages in thread
* [Comm] Re: [JT] Поиск и замена 2005-04-19 21:32 ` Olvin @ 2005-04-20 12:09 ` Michael Shigorin 0 siblings, 0 replies; 19+ messages in thread From: Michael Shigorin @ 2005-04-20 12:09 UTC (permalink / raw) To: community On Wed, Apr 20, 2005 at 12:32:27AM +0300, Olvin wrote: > >>>Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) > >>Михаил, вы единственный оптимист в community@! :) > >Да не, просто в своё время споткнулся и узнал про find -depth. :) > Мне кажется, что -depth тут не сильно помогло бы :) Мне как раз с переименованиями деревьев помогало. ЕМНИП, конечно. -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Re: [JT] Поиск и замена 2005-04-19 14:53 ` [Comm] " Michael Shigorin 2005-04-19 16:45 ` Michael Isachenkov @ 2005-04-20 13:28 ` Andrey Rahmatullin 2005-04-20 13:56 ` Дорогов Николай 1 sibling, 1 reply; 19+ messages in thread From: Andrey Rahmatullin @ 2005-04-20 13:28 UTC (permalink / raw) To: community [-- Attachment #1: Type: text/plain, Size: 308 bytes --] On Tue, Apr 19, 2005 at 05:53:16PM +0300, Michael Shigorin wrote: > Если мыслить позитивно -- _вдумчивое_ изучение find(1). :) convmv(1) для данного случая тоже сойдет ;) -- WBR, wRAR (ALT Linux Team) Powered by the ALT Linux fortune(8): Зачем вам понадобился -L/usr/lib? -- ldv in sisyphus@ [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Re: [JT] Поиск и замена 2005-04-20 13:28 ` Andrey Rahmatullin @ 2005-04-20 13:56 ` Дорогов Николай 0 siblings, 0 replies; 19+ messages in thread From: Дорогов Николай @ 2005-04-20 13:56 UTC (permalink / raw) To: community Проблему поиска и замены текста в файлах с именами по маске на половину решил следующим скриптом, который нашел на сайте http://www.vanta.ru/script/info.php?id=498&clas=2 Не хватает прохода по вложенным папкам. А так просто сказочный скриптик. #!/usr/bin/perl # ==================================================================== # Copyright (c) 1998-2000 Marcus Kazmierczak, marcus@mkaz.com # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # # 3. The name of the author may not be used to endorse or promote products # derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # ==================================================================== # # # APP: mksr # ORIGIN: August 1999 # # VERSION NUMBER $ver = "ver 0.0.5"; # Last Modified: November 2000 # # Auth: Marcus Kazmierczak # marcus@mkaz.com # http://blazonry.com/perl/ # # DESC: Search and Replace # print "\nmksr Search and Replace $ver\n"; print "Marcus Kazmierczak, marcus\@mkaz.com\n\n"; # TODO LIST # # - ADD Recursion Option ## REQUIRED CPAN MODULES ## # File::Recurse Module bundled with File-Tools 2.0 # download from CPAN site (http://www.perl.com/CPAN//modules/by-module/File/) # use File::Recurse; #### my $find = $ARGV[0]; my $replace = $ARGV[1]; my $glob = $ARGV[2]; @filelist = <*$glob>; if ( (!$find) || (!$replace) || (!$glob) ) { print "Search and replace recursively through the current directory\n"; print "replacing <find> with <replace> in each file specified.\n"; print "To use wildcards leave off the * Ex: '.txt' \n\n"; print " mksr <find> <replace> <file>\n"; exit(0); } # process each file in file list foreach $filename (@filelist) { print " P: $filename\n"; # retrieve complete file open (IN, "$filename") || die("Error Reading File: $filename $!"); { undef $/; $infile = <IN>; } close (IN) || die("Error Closing File: $filename $!"); $infile =~ s/$find/$replace/g; # write complete file open (PROD, ">$filename") || die("Error Writing to File: $filename $!"); print PROD $infile; close (PROD) || die("Error Closing File: $filename $!"); } print "\nFinished.\n"; exit(0); ----- Original Message ----- From: "Andrey Rahmatullin" <wrar@altlinux.ru> To: <community@altlinux.ru> Sent: Wednesday, April 20, 2005 5:28 PM Subject: Re: [Comm] Re: [JT] Поиск и замена > _______________________________________________ > Community mailing list > Community@altlinux.ru > https://lists.altlinux.ru/mailman/listinfo/community ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [Comm] Поиск и замена 2005-04-19 12:51 ` Дорогов Николай 2005-04-19 12:52 ` Alexey Rusakov @ 2005-04-19 12:55 ` Nick S. Grechukh 1 sibling, 0 replies; 19+ messages in thread From: Nick S. Grechukh @ 2005-04-19 12:55 UTC (permalink / raw) To: community [-- Attachment #1: Type: text/plain, Size: 273 bytes --] On Tuesday 19 April 2005 15:51, Дорогов Николай wrote: > Как я понял из man, sed не меняет исходный файл а выводит данные в > стандартный вавод. > Есть ли команды которые позволяют делать замены прям в том файле который > читается? $ rpm -qf /usr/bin/subst sed-4.1.4-alt2 [-- Attachment #2: Type: application/pgp-signature, Size: 190 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2005-04-20 13:56 UTC | newest] Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2005-04-19 12:20 ` [Comm] Поиск и замена Eugene A. Suchkov 2005-04-19 12:32 ` Alexey Rusakov 2005-04-19 12:51 ` Дорогов Николай 2005-04-19 12:52 ` Alexey Rusakov 2005-04-19 13:08 ` [Comm] [JT] " Michael Isachenkov 2005-04-19 13:12 ` Re[2]: " Anton Gorlov 2005-04-19 13:18 ` Michael Isachenkov 2005-04-19 13:13 ` Olvin 2005-04-19 13:21 ` Alexey Rusakov 2005-04-19 14:02 ` Michael Isachenkov 2005-04-19 14:53 ` [Comm] " Michael Shigorin 2005-04-19 16:45 ` Michael Isachenkov 2005-04-19 17:06 ` Michael Shigorin 2005-04-19 17:10 ` Michael Isachenkov 2005-04-19 21:32 ` Olvin 2005-04-20 12:09 ` Michael Shigorin 2005-04-20 13:28 ` Andrey Rahmatullin 2005-04-20 13:56 ` Дорогов Николай 2005-04-19 12:55 ` [Comm] " Nick S. Grechukh
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git