- Редактирование текста в файле, phpcoder, 11:39 , 27-Июл-07 (1)
[c0der@rock ~/openet]$ while read PATTERN; do sed -i "/^$PATTERN/y/abc/123/" 1.txt; done <2.txt [c0der@rock ~/openet]$ cat 1.txt text1 111122 text2 00bb22 text3 00ee22 text4 678789 text5 098765 text6 123433 text7 aabbcc
- Редактирование текста в файле, Roma, 12:38 , 27-Июл-07 (2)
Сенкс за помощь, конечно, в любом случае, а без цикла никак необойтись?Пробовал так sed -e 's/^/^/' -e 's/$/ /' < /tmp/2.txt | sed 'y/abc/123/' /tmp/1.txt | grep -f - /tmp/1 .txt Получается text4 678789 text5 098765 Думаю как бы тут с grep извратиться.
- Редактирование текста в файле, phpcoder, 12:49 , 27-Июл-07 (3)
>Сенкс за помощь, конечно, в любом случае, а без цикла никак необойтись? sed -i "/^\(`paste 2.txt -d'+' -s | sed 's,+,\\\|,g'`\)/y/abc/123/" 1.txt Можно ещё вот так. Так даже вроде бы лучше: файл правим один раз, а не вызываем sed для каждой строки + избавились от цикла.
- Редактирование текста в файле, Roma, 13:12 , 27-Июл-07 (6)
>sed -i "/^\(`paste 2.txt -d'+' -s | sed 's,+,\\\|,g'`\)/y/abc/123/" 1.txt Хм.. туплю. У меня не хочет Вываливает paste: -d+: No such file or directory sed: 1: "1.txt": invalid command code .
- Редактирование текста в файле, phpcoder, 13:13 , 27-Июл-07 (7)
>>sed -i "/^\(`paste 2.txt -d'+' -s | sed 's,+,\\\|,g'`\)/y/abc/123/" 1.txt > >Хм.. туплю. У меня не хочет >Вываливает >paste: -d+: No such file or directory >sed: 1: "1.txt": invalid command code . У меня в zsh работало. Возможно, проблемы в шелле или ещё-чем-нибудь. (помогает подставить echo перед командой и посмотреть, какая команда получится в результате и будет выполнена)
- Редактирование текста в файле, madskull, 13:06 , 27-Июл-07 (4)
>[оверквотинг удален] >Пробовал так >sed -e 's/^/^/' -e 's/$/ /' < /tmp/2.txt | sed 'y/abc/123/' /tmp/1.txt >| grep -f - /tmp/1 >.txt > >Получается >text4 678789 >text5 098765 > >Думаю как бы тут с grep извратиться. Вот так тоже можно извратиться: cat 1.txt | sed "/`cat 2.txt | tr '\n' '|' | sed 's/|$//;s/|/\\\\|/g'`/y/abc/123/"
- Редактирование текста в файле, phpcoder, 13:07 , 27-Июл-07 (5)
>>[оверквотинг удален] >cat 1.txt | sed "/`cat 2.txt | tr '\n' '|' | sed 's/|$//;s/|/\\\\|/g'`/y/abc/123/" cat здесь лишний: sed "/`cat 2.txt | tr '\n' '|' | sed 's/|$//;s/|/\\\\|/g'`/y/abc/123/" 1.txt
- Редактирование текста в файле, Roma, 13:36 , 27-Июл-07 (8)
>sed "/`cat 2.txt | tr '\n' '|' | sed 's/|$//;s/|/\\\\|/g'`/y/abc/123/" 1.txt Точно! Это то что нужно! Всем большое-большое спасибо!!!
- Редактирование текста в файле, Roma, 15:43 , 27-Июл-07 (9)
М-дя... рано радовался..глянул не проверяя, думал все ОК sed "/`cat 2.txt | tr '\n' '|' | sed 's/|$//;s/|/\\\\|/g'`/y/abc/123/" 1.txt а оно оказывается не проходит, выводит файл 1.txt без замены символов, в первозданном, так сказать, варианте.. Есть еще какие нибудь варианты?
- Редактирование текста в файле, phpcoder, 15:47 , 27-Июл-07 (10)
[...] >Есть еще какие нибудь варианты? Мой вариант, попробуй подправить :)
- Редактирование текста в файле, Soldatik, 14:02 , 29-Июл-07 (11)
>[...] >>Есть еще какие нибудь варианты? > >Мой вариант, попробуй подправить :) Учился в школе, инсте, потом армия, потом жизнь стала казаться сказкой. Живу как в раю после дембеля. Лучше бы косил :) http://prostieokna.ru/a/
|