目標
「viエディタ」のコマンドモードでの次の操作を確認して利用できる。
- 文字列と行の「コピー・切り取り・貼り付け」方法
- 行番号の「表示・非表示」方法
- 色々なカーソルの移動方法
コマンドモードでの色々な操作
「コピー・切り取り・貼り付け」
「コピー・切り取り・貼り付け」のコマンド
コマンド | 操作内容 |
「yy」もしくは「Y」 | 行をコピーする |
dd | 行を切り取る |
:5,10 d Enterキー | 5行目から10行目を切り取り |
x | カーソル位置の一文字を切り取り |
X | カーソル位置のひとつ左を切り取り |
p | カーソル位置の下の行に貼り付け |
P | カーソル位置の上の行に貼り付け |
:5,10 co 14 Enterキー ※(14+1)行目に貼り付けされます。 | 5行目から10行目をコピーして15行目に貼り付け |
u | 操作をひとつ取り消す |
「yy」(または「Y」)と「p」の利用
「yy」または「Y」で行をコピーしてみます。その後、「p」で指定したカーソル位置の下に貼り付けてみます。「golf」の位置で「yy」と押下します。

「volleyball」まで移動して「p」を押下します。

カーソル位置の下の行(「volleyball」の下の行)に「golf」が貼り付けされます。

「dd」と「P」の利用
「dd」で行を切り取ってみます。その後、「P」で指定したカーソル位置の上に貼り付けてみます。「rugby」の位置で「dd」と押下します。

「rugby」が切り取られたらカーソルを「soccer」まで移動します。

続けて「P」を入力します。「rugby」が「soccer」の上の行に貼り付けられました。

「x」と「X」と「u」の利用
「x」と「X」で文字の切り取りを行って、その後、「u」で操作を取り消してみたいと思います。まず「basketball」の【e】にカーソルを移動します。

「x」を押下します。【e】が切り取られました。

次に【t】にカーソルを置いたまま「X」を押下します。ひとつ前の【k】が切り取られました。

「u」を2回押下します。操作が2回戻されます。

複数行のコピーと貼り付け
コマンドモードで次のように入力します。
「:コピーする最初の行番号,コピーする最後の行番号 co コピー先の行番号のひとつ上 Enterキー」
今回は「:2,8 co 8 Enter」として行をコピーして「ファイルの最後の行」に何度か貼り付けてみます。(切り取りして貼り付けには「co」でなく「m」を用います。)

入力すると次のようになります。

続けて「:1,15 co 15」と入力してEnterキーを押下します。

結果は次のようになります。

ブラウザを少し小さくしてしてターミナルの全画面が半分くらいしか見えない状態にして次の移動の操作を練習してみたいと思います。画面を次のように縮小します。ここまで来たら一旦上書き保存を行います。「:wq」と入力してファイルを閉じます。

「行番号の表示・非表示」
「行番号の表示・非表示」のコマンド
表示・非表示コマンド | 操作内容 |
:set nu | ファイルの行番号を表示します。 |
:set nonu | ファイルの行番号を非表示にします。 |
「:set nu」と「:set nonu」の実行
ここでは「:set nu」で行番号を表示して、「:set nonu」で行番号を非表示に戻します。まず「rocky1.txt」をviエディタで開いてコマンドモードの状態で「:set nu」と入力します。

そのまま「Enterキー」を押下します。行番号が表示されます。

続けて「:set nonu」と入力します。

そのまま「Enterキー」を押下します。行番号が非表示になります。

「カーソル移動」
「カーソル移動」のコマンド
移動コマンド | 操作内容 |
h | カーソルをひとつ左(←)へ移動 |
j | カーソルをひとつ下(↓)へ移動 |
k | カーソルをひとつ上(↑)へ移動 |
l | カーソルをひとつ右(→)へ移動 |
H | 表示画面の一番上にカーソルを移動 |
L | 表示画面の一番下にカーソルを移動 |
gg | ファイルの最初の行にカーソルを移動 |
G | ファイルの最後の行にカーソルを移動 |
「0」 または 「^」 | 行の先頭へカーソルを移動 |
$ | 行の末尾へカーソルを移動 |
「数字G」 または 「:数字」 | 指定した行(数字)にカーソルを移動 |
カーソルの移動はコマンドモード上で行えます。インサートモードでも矢印キーを利用して移動することができますが、コマンドモードでの移動は時短作業としても利用できる操作があるので確認してみたいと思います。
まず、viエディタで「rocky1.txt」を開いて行番号を表示(「:set nu」)を行って10行目の「soccer」の【o】にカーソルをあわせます。

「h」[「j」「k」「l」の利用
まず「h」を押下します。「s」にカーソルが移動します。(左へひとつ移動)

続けて「j」を押下します。「g」にカーソルが移動します。(下へひとつ移動)

更に「k」を押下します。「s」にカーソルが移動します。(上へひとつ移動)

最後に「l」を押下します。「o」にカーソルが移動します。(右へひとつ移動)

「H」「L」「gg」「G」の利用
画面の表示で行が10行目くらいから25行目が見えるようにカーソルを移動します。(今回は17行目の「rugby」の【u】に移動)

「H」を押下します。15行目の「t」にカーソルが移動します。

「L」を押下します。20行目の「b」にカーソルが移動します。

「gg」を押下します。ファイル自体の先頭行にカーソルが移動します。

「G」を押下します。ファイル自体の最終行にカーソルが移動します。

「0」「$」「^」「数字G」「:数字」の利用
準備としてカーソルを17行目の「rugby」の【u】に移動します。

「0」を押下します。行の先頭にカーソルが移動します。

「$」を押下します。行の末尾にカーソルが移動します。

「^」を押下します。行の先頭にカーソルが移動します。

「数字G」を押下します。指定した行にカーソルが移動します。今回は25行目を指定してみます。「25G」と入力します。

「:数字」を押下します。指定した行にカーソルが移動します。今回は3行目を指定してみます。「:3」と入力します。

今回は以上になります。

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

