[BSD] kis sed segitseg
Gabor HALASZ
halasz.g at freemail.hu
2012. Sze. 30., V, 20:06:37 CEST
On 9/30/2012 9:05 AM, gabor at zahemszky.hu wrote:
> On Sat, 29 Sep 2012 23:50:39 +0200, Gabor HALASZ wrote:
>> Helo!
>>
>> sed-del szeretnem in-place kicserelni a dupla idezojeleket szimplara,
>> de nem akarja:
>>
>> % cat /tmp/example.txt
>> Szimpla zarojel: '
>> Dupla zarojel: "
>> % sed s/\"/\'/g < /tmp/example.txt
>> Szimpla zarojel: '
>> Dupla zarojel: '
>> % sed -i 's/\"/\'/g' /tmp/example.txt
>> Unmatched '.
>> % sed -i 's/\\"/\\'/g' /tmp/example.txt
>> Unmatched '.
>> % sed -i 's/\\\"/\\\'/g' /tmp/example.txt
>> Unmatched '.
>
> Mauzi mar mgirta a megoldast, en csak elmagyarazom :-)
>
Sem a megoldassal, sem a magyarazattal nem vagyok teljesen megelegedve.
Persze ez lehetne az en privat nyavajam is, de sajnos ehhez az
elegedetlenkedeshez tarsakat is talaltam:
% sed -i "s/\"/'/g" /tmp/example.txt
Unmatched '.
A csh is reklamal:
% echo "s/\"/'/g"
Unmatched '.
A bash teljesen beteg lesz:
$ % echo "s/\"/'/g"
bash: fg: %: no such job
A bash+sed paros meg inkabb:
$ sed -i "s/\"/'/g" example.txt
sed: 1: "example.txt": invalid command code e
További információk a(z) BSD levelezőlistáról