Re: помогите с sed и подпрограммой
Владимир Скубриев -> debian-russian@lists.debian.org @ Thu, 20 Jun 2013 10:50:45 +0400:
>> По поводу плясок согласен. Уж очень много нюансов.
>>
>> Сейчас вот из шефа не работает - скотина. Уже просто слов нет. 2-ой день
>> пошел.
>>
ВС> не рабочий вариант:
ВС> sed -i -r '/^.*::.*/s/(^.*:: )(.*)/echo -n "\1"; echo \2 | base64 -d/e'
ВС> $dbdir/$stamp/$ou
ВС> рабочий вариант:
ВС> sed -i -r '/^.*::.*/s/(^.*:: )(.*)/echo -n "\\1"; echo \\2 | base64 -d/e'
ВС> $dbdir/$stamp/$ou
ВС> пришлось за бэкслэшить \\1 и \\2 иначе bash переводил echo -n "\\1"; echo \\2
ВС> в echo -n "^A"; echo ^2
ВС> )))))
ВС> даже и не знаю что сказать - сложная это штука linux )
Что-то я подозреваю, что не в баше дело. Если команда выдавалась в нем,
то для bash экранирование апострофами - это повод не подставлять \n, и
они должны были попасть к sed как есть, а дальше их подставит уже sed, и
во внутренний bash они уже не попадут.
Но если вся команда целиком подсовывалась башу какой-то еще программой,
там могла произойти подстановка.
Reply to: