#navi(../)
viに関する設定方法を公開しています。~
他の設定方法に関しての資料は「[[vi関連>http://linux.just4fun.biz/%E9%80%86%E5%BC%95%E3%81%8DUNIX%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89.html#q22e6c75]]」参照してください。

*viで文字列の置換をする方法 [#a768b132]

viで文字列の置換操作を以下に記します。~
置換例として、以下の操作を記述します。
-ファイル内全体の文字列置換
-指定範囲の文字列置換
-カーソル行のみの置換
-区切りのスラッシュを置換

#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)
#contents

* 関連記事 [#f42c3153]
-[[viでボックス選択(矩形選択)する操作方法>逆引きUNIXコマンド/viでボックス選択(矩形選択)する操作方法]]
-[[viで行番号を表示する方法>逆引きUNIXコマンド/viで行番号を表示する方法]]
-[[viで行番号を非表示する方法>逆引きUNIXコマンド/viで行番号を非表示する方法]]
-[[viでタブ幅を設定する方法>逆引きUNIXコマンド/viでタブ幅を設定する方法]]
-[[viでオートインデントを設定する方法>逆引きUNIXコマンド/viでオートインデントを設定する方法]]
-[[viで文字列の置換をする方法>逆引きUNIXコマンド/viで文字列の置換をする方法]]
-[[viで検索した結果のハイライト表示を消す方法>逆引きUNIXコマンド/viで検索した結果のハイライト表示を消す方法]]
-[[viで大文字小文字を区別せず検索する方法>逆引きUNIXコマンド/viで大文字小文字を区別せず検索する方法]]
-[[viのインデントをスペースにする方法>逆引きUNIXコマンド/viのインデントをスペースにする方法]]
-[[vi「E297 スワップファイルの書込みエラーです」の対処方法>逆引きUNIXコマンド/vi「E297 スワップファイルの書込みエラーです」の対処方法]]
-[[viで文字コードおよび改行コードを指定してファイルを開く>逆引きUNIXコマンド/viで文字コードおよび改行コードを指定してファイルを開く]]

*ファイル内全体の置換 [#be37263c]
以下の操作でファイル内すべての対象文字列が置換されます。
 :%s/対象文字列/置換後の文字列/g
-置換前
 :%s/hello/konnichiwa/g
#ref(vi-01.png)
#br
-置換後
#ref(vi-02.png)
#br

以下のように最後に''c''をつけると最下行に置換の問いあわせメッセージが表示されます。
#ref(vi-03.png)
#br
*指定範囲の文字列置換 [#saeb4925]
開始行と終了行を設定すると設定した範囲の文字列を置換できます。~
 :開始行,終了行 s/対象文字列/置換後の文字列/g
viで行番号表示を有効にする場合は以下のコマンドを実行します。~
 :set number
-置換前
 :3,4 s/hello/konnichiwa/g
#ref(vi-04.png)
#br
-置換後
#ref(vi-05.png)
#br

*カーソル行のみの置換 [#zc798141]
カーソルのある行のみ置換対象とする場合。
-最初の対象文字列のみ置換
 :s/対象文字列/置換後の文字列/
-カーソル行の対象文字列をすべて置換する
 :s/対象文字列/置換後の文字列/g

*区切りのスラッシュを置換したい場合 [#p054a39f]
上記例ではスラッシュで対象文字列と置換後の文字列を区切っていますが''/''以外を利用することによりスラッシュの置換が可能です。~
下記例では''$''を利用して区切っています。
-置換前
 :%s$/$#$g
#ref(vi-06.png)
#br
-置換後
#ref(vi-07.png)

#br
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)
#br

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS