本番環境のサーバーには、GUI(マウスで操作する)が存在せず、CUI(コマンドで操作する)しかないことが大半である。CUIを操作するにあたり、ViやVimは避けては通れない。
viとは、Linuxにプリインストールされているテキストエディタのこと。
Linux上にあるテキストファイルをviで開き、内容の修正や確認をすることが多い。
vimは、viに拡張機能を持たせたもの。
ここでは、viのコマンドを備忘録としてまとめておきたい。
sample
#コマンドモード
x #カーソル位置にある1文字削除
dd #1行削除
d100d #100行削除
yy #行をコピー
p #コピーした行や文字をペースト
{} #1ブロック移動
u #変更を元に戻す
ctrl+t #変更を進める
gg #ファイルの一番上に移動
G #最終行に移動
100G #100行目に移動
/: #下方向の文字を検索
?: #上方向の文字を検索
:q! #ファイルを保存せず終了
:w #viは終了せずファイル保存
:wq #viを終了してファイル保存
#コマンドモードと入力モード間を移動
i #現在のカーソル位置から入力
I #現在のカーソル位置から行頭入力
a #現在のカーソル位置の1つ右から入力
A #現在のカーソル位置の行末から入力
O #1つ上に行を追加して入力
o #1つ下に行を追加して入力
Esc #入力モードからコマンドモードに移動
#コマンド機能
:sp ファイル名 #画面の水平方向に分割
:vsp ファイル名 #画面の垂直方向に分割
ctrl+wを2回実行 #分割した画面間を移動
:%s/old/new/g #文字列を全て変換(oldのものをnewにする)
:set number #ファイルの行番号を表示する
:!コマンド #実行中にコマンドを実行する
:!%:p #ファイルを実行する(実行する際には、:wでファイルを保存すること)
[各文字の意味]
: コマンドモード
! shellコマンドの実行
% 編集のファイルへのリンク
:p 絶対パス(rootディレクトリからのパス(/home/test/test.sh))を表す