Linuxコマンド一覧

vimコマンド|ターミナルの中でファイルを編集する

__ __ _ _____
\ \ / /__| |_|_ _|__ _ __ _ __ ___
\ \ /\ / / _ \ '_ \| |/ _ \ '__| '_ ` _ \
\ V V / __/ |_) | | __/ | | | | | |
\_/\_/ \___|_.__/|_|\___|_| |_| |_| |_
 
vim を試すためのサンドボックスです。実機のファイルには影響しません。
user@webterm:~/project$
 

vim はターミナルの中で動くエディタです。抜けられなくなったときの `:q!`、モードの切り替え、最低限の移動と編集のキーを、ブラウザ上のターミナルで実際に動かしながら確認できます。

最終更新: 2026-09-06

書式

vim [+行番号] [ファイル]

ファイルを開きます。 無いファイル名を渡すと、新規作成として開きます。

まず打ってみる

編集する前に、中身を見ておきます。

$ cat notes.txt
buy milk
call the bank
fix the login bug

開きます。

$ vim notes.txt

画面がエディタに変わります。 最初に覚えるのは、閉じ方です。

やりたいこと打つもの
保存せずに閉じるEsc:q! → Enter
保存して閉じるEsc:wq → Enter
保存だけするEsc:w → Enter

Esc を先に押すのは、いまどのモードにいても確実にノーマルモードへ戻すためです。

モードがある

vim が他のエディタと違うのは、キーの意味がモードで変わるところです。

モード何ができるか入り方
ノーマル移動・削除・コピーなどの操作Esc
挿入文字を打ち込むi(カーソルの前)/ a(うしろ)/ o(下に新しい行)
コマンドライン保存・終了・置換:

開いた直後はノーマルモードです。 そのまま文字を打つと、文字が入る代わりに操作として解釈されます。 最初に戸惑うのはここですが、書くときは i、終わったら Esc と覚えれば足ります。

動く

ノーマルモードでは、キーがそのまま移動になります。

キー動き
h j k l左・下・上・右へ1つ
w b単語ぶん次へ・前へ
0 $行の先頭・行の末尾へ
gg Gファイルの先頭・末尾へ
/文字列 → Enter前方に検索。n で次の一致へ

方向キーでも動けますが、h j k l なら手を動かさずに済みます。

直す

キー動き
xカーソルの文字を1つ消す
dd1行まるごと消す
dw単語ぶん消す
yyp1行コピーして貼り付け
ciw単語を消して、そのまま書き直しに入る
u直前の操作を取り消す
Ctrl+r取り消しをやり直す
.直前の編集をもう一度繰り返す

消したり貼ったりを1〜2キーでできることが、vim が速いと言われる理由です。

行を指定して開く

ログのエラーが何行目か分かっているときは、その行から開けます。

$ vim +12 logs/app.log

+12 で12行目にカーソルを置いた状態で開きます。

実務での使いどころ

vim は、SSH でつないだ先で設定ファイルを直すときに打つコマンドです。

場面打ち方
設定ファイルを直すvim config.yml
エラーの行から開くvim +12 logs/app.log
新しいファイルを書くvim draft.txt
見るだけなら開かないcatless を使う

読むだけなら less、書き換えるなら vim、と分けると迷いません。

つまずきやすいところ

Esc を押してから : を打ちます。 挿入モードのまま :wq と打つと、そのまま文字として入力されます。 保存できていないときは、まず Esc です。

Ctrl+S は効きません。 ターミナルでは画面を止める操作になることがあります。 保存は :w です。

ディレクトリは開けません。

$ vim logs
vim: logs: Is a directory

変更を捨てて逃げたいときは :q! です。 :q は変更が残っていると断られます。 「何をしたか分からなくなった」ときは、Esc:q! で開く前の状態に戻せます。

手を動かして覚える

webterm.appこのサイト

learn.webterm.app別のサイト

>_WEBTERM LEARN

WebTerm Learn|1つのコマンドから、使える状態へ

コマンドは単体で覚えるより、実際の作業の流れの中で使うほうが身につきます。順番に積み上げていくコースがあります。

コースを見る

関連するコマンド

cat / less / man / echo

よくある質問

vim から抜けられません。
`Esc` を押してから `:q!` と打って Enter です。`Esc` でノーマルモードに戻り、`:q!` が「保存せずに終わる」という意味になります。保存して終わるなら `:wq` です。
文字を打つと変な動きをします。
ノーマルモードのままだからです。vim では、キーがそのまま文字になるのは挿入モードのときだけで、`i` を押すと入れます。戻るのは `Esc` です。
保存はどうしますか?
`Esc` のあと `:w` です。保存して終わるなら `:wq`、ノーマルモードで `ZZ` と打っても同じです。
方向キーは使えますか?
使えます。ただし `h` `j` `k` `l` なら手をホームポジションから動かさずに済むので、慣れると速くなります。
エディタなら nano や VS Code でもよいのでは?
手元ではそのとおりです。vim を覚える理由は、どのサーバーにも入っていて、SSH でつないだ先でも必ず使えるからです。