Итак, у меня есть файл test.txt, который содержит
home -> range
Если я редактирую файл в vim и запускаю команду %s/^\(.*\)->\(.*\)$/\2 ::= \1 ;/g
он преобразует файл в
range ::= home ;
что я и хочу Однако, если я бегу
perl -pi -e 's/^\(.*\)->\(.*\)$/\2 ::= \1 ;/g' test.txt
я думаю, что должен делать то же самое, я не получаю изменений - кто-то может сказать мне, что пошло не так? Я подозреваю, что нужно что-то избежать, но я выбрасываю на него всевозможные комбинации побега ... плюс я хотел бы иметь некоторые общие правила о преобразовании между двумя форматами ...