09-Linux & Virtual Box

Virtual Box & Linux(Part.8)| Linux viエディタの利用方法(3)| 現役エンジニア&プログラミングスクール講師

目標

「viエディタ」コマンドモードでの次の操作を確認して利用できる。

  1. 色々なページの移動方法
  2. テキストの検索・置換
  3. その他の便利な操作

コマンドモードでの色々な操作

「ページ移動」

「ページ移動」のコマンド

ページ移動コマンド操作内容
Ctrl + f次のページへ移動
Ctrl + b前のページへ移動
Ctrl + d半画面ページを次へ移動
Ctrl + u半画面ページを前へ移動

ページ移動については操作を行っていません。

「テキストの検索・置換」

「テキストの検索」のコマンド

検索コマンド操作内容
/検索文字列カーソル以降の文字列の検索(「n」で次へ移動「N」で前へ移動)
?検索文字列カーソル以前の文字列の検索(「n」で次へ移動「N」で前へ移動)
:noh検索文字列へのハイライトの解除

「/検索文字列」の実行

事前準備:viエディタで「rocky1.txt」を開てい行番号を表示します。その後、15行目にカーソルを移動して「/soccer」と入力します。

入力が終わったら「Enterキー」を押下して実行します。結果は直後の「soccer」の一文字目が白くハイライトされて選択されています。その他の「soccer」は黄色くハイライトされています。

「/検索文字列」は検索する文字列の中でカーソルの後ろにある合致する最初の検索文字列を選択します。ハイライトがされたら「n」と「N」を何度か打ち込んで選択される「soccer」が順番に変更されるのが確認できます。

「:noh」の実行

「:noh」と入力して「Enterキー」で実行します。ハイライトが消えて検索が終了します。

「?検索文字列」の実行

再度15行目にカーソルをあわせて、今度は「?soccer」と入力します。今度はカーソルのあった直前の合致する検索文字列を選択した状態になります。

「:noh」と入力して検索を終了します。

「テキストの置換」のコマンド

置換コマンド操作内容
:s /検索文字列/置換文字列/カーソル位置の行の検索文字列をひとつだけ置換
:s /検索文字列/置換文字列/gカーソル位置の行の検索文字列をすべて置換
:s /検索文字列/置換文字列/gcカーソル位置の行の検索文字列をすべて置換(確認あり)
:%s /検索文字列/置換文字列/gファイル内の検索文字列をすべて置換
:%s /検索文字列/置換文字列/gcファイル内の検索文字列をすべて置換(確認あり)

「:s /検索文字列/置換文字列/」の実行

検索のときと同様に15行目にカーソルをあわせて、「:s /soccer/football/」と入力します。カーソル位置の行に検索文字列が存在しない場合は置換されません。

続けてカーソルを10行目に移動して「:s /soccer/football/」コマンドを入力します。
10行目の「soccer」が「football」に置換されます。

「:%s /検索文字列/置換文字列/g」の実行

最後にファイル全体の合致する検索文字列を全て変更してみたいと思います。
「:%s /soccer/football/g」と入力します。

「Enterキー」を押下します。ファイル内の「soccer」が全て「football」に置換されています。

「その他の便利な操作」

「その他の便利な操作」のコマンド

コマンド操作内容
Ctrl + gカーソル位置の詳細情報を表示
:!コマンドviエディタを利用しながらLinuxコマンドを実行する
:r!コマンドコマンド実行結果をファイルへ出力
:rファイル名指定ファイルをカーソルのある行の一行下へ出力
:e!前回の保存状態でファイルを保存(変更の破棄)

「Ctrl + g」の実行

ファイルの名前や行数がファイルの左下に表示されます。
「”rocky1.txt” [Modified] 30 lines –83%–」の部分

「:!コマンド」の実行

「:!」に続けて利用したいコマンドを入力します。

「Enterキー」を押下します。コマンドが実行されます。再度「Enterキー」を押下すると
viエディタに操作が戻ります。

再度「Enterキー」を押下します。操作がviエディタに戻りました。

「:r!コマンド」の実行

「:r!コマンド」でLinuxコマンドを実行するとコマンドの出力をファイルに書き込むことができます。「:r!ls -l」と入力します。(!とコマンドの間は空けません)

「Enterキー」を押下します。rocky1.txtの中身にコマンドの出力が書き込まれました。

「:e!」の実行

ファイルの状態を最後の保存状態に戻して再度開くことができます。「:e!」を実行します。

実行結果は次の通りです。「football」の文字列が消えて「soccer」に戻っています。

「:r ファイル名」の実行

「rocky1.txt」を「:wq」で閉じて「rocky2.txt」を開きます。

「:r rocky1.txt」と入力します。(rとファイル名の間は半角スペースが必要です。)

「Enterキー」を押下します。「rocky1.txt」の内容が書き込まれました。

今回は以上になります。

「Linux」おすすめ書籍6選【初心者・脱初心者用】| 現役エンジニア&プログラミングスクール講師「Linux」初心者の方がLinuxの操作や仕組みを理解するためのお勧めの書籍について取り上げています。また中級者として更に進んだ学習ができる書籍についても1冊取り上げています。ページの下部には「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...

ブックマークのすすめ

「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】| 現役エンジニア&プログラミングスクール講師「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】について解説している記事です。削除方法も掲載しています。...
【パソコン選び】失敗しないための重要ポイント | 現役エンジニア&プログラミングスクール講師【パソコン選び】失敗しないための重要ポイントについての記事です。パソコンのタイプと購入時に検討すべき点・家電量販店で見かけるCPUの見方・購入者が必要とするメモリ容量・HDDとSSDについて・ディスプレイの種類・バッテリーの持ち時間や保証・Officeソフト・ウィルス対策ソフトについて書いています。...
RELATED POST
09-Linux & Virtual Box

Virtual Box & Linux(Part.21)| Linux リソースの利用(1)| 現役エンジニア&プログラミングスクール講師

2023年5月21日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.14)| Linux ユーザー管理(2)| 現役エンジニア&プログラミングスクール講師

2023年5月2日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.9)| Linux テキスト処理(1)| 現役エンジニア&プログラミングスクール講師

2023年4月27日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.22)| Virtual box でUSBメモリを認識させる方法 | 現役エンジニア&プログラミングスクール講師

2023年5月22日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.23)| Linux USBメモリ内でのパーティショ作成とファイルシステム作成 | 現役エンジニア&プログラミングスクール講師

2023年5月25日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site
09-Linux & Virtual Box

Virtual Box & Linux(Part.13)| Linux ユーザー管理(1)| 現役エンジニア&プログラミングスクール講師

2023年5月1日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site