vimでスラッシュ(/)を含む場合の置換

2021-06-25

vi(vim)でスラッシュ(/)を含む場合の置換方法

昔作ったスクリプトで「/home/admin/www1/backup/」にバックアップファイルをコピーするスクリプトがあってディレクトリ構成が変わって「/home/admin/backup/」になったので、vi(vim)で置換しようと思ったけど、スラッシュ(/)があるとエラーになって駄目でした

調べてみるとエスケープするか;(セミコロン)を使えば置換できようです

vi(vim)でスラッシュをエスケープして置換する場合

「/home/admin/www1/backup/」の「/www1」を置換する場合にエスケープする場合はいかのようになります。スラッシュ(/)等の特殊文字をエスケープするには、その文字の前にバックスラッシュ (\)を付けます

:%s/\/www1\/backup/\/backup/g

vi(vim)でスラッシュを;(セミコロン)して置換する場合

「/home/admin/www1/backup/」の「/www1」を置換する場合に;(セミコロン)する場合はいかのようになります

:%s;/www1/backup;/backup/;g

 

LinuxCentOS 6,CentOS 7

Posted by admin