W vimie chcę zastąpić długą ścieżkę /a/b/f/g/d/g
inną ścieżką /s/g/w/d/g/r
w pliku tekstowym. Zwykle używam, \/
ale jest tu zbyt wiele ukośników. Czy istnieje prostszy sposób?
W vimie chcę zastąpić długą ścieżkę /a/b/f/g/d/g
inną ścieżką /s/g/w/d/g/r
w pliku tekstowym. Zwykle używam, \/
ale jest tu zbyt wiele ukośników. Czy istnieje prostszy sposób?
Odpowiedzi:
Może możesz użyć sed
Przykład 1 -
@
separator sed : Zamień/opt/omni/lbin
na/opt/tools/bin
Gdy podasz nazwę ścieżki, która ma
/
, możesz użyć@
jako separatora zamiast/
. W poniższym przykładzie poniżej, w ostatnim wierszu pliku wejściowego,/opt/omni/lbin
zmieniono na/opt/tools/bin
.$ sed 's@/opt/omni/lbin@/opt/tools/bin@g' path.txt /usr/kbos/bin:/usr/local/bin:/usr/jbin/:/usr/bin:/usr/sas/bin /usr/local/sbin:/sbin:/bin/:/usr/sbin:/usr/bin:/opt/omni/bin: /opt/tools/bin:/opt/omni/sbin:/root/bin
From: http://www.thegeekstuff.com/2009/10/unix-sed-tutorial-advanced-sed-substitution-examples/