|
※※※※※※※VIの使い方※※※※※※※ |
|
コマンド: □入力後即実行 ◇〔CR〕で決定 ■〔ESC〕で終了 |
| 常用 |
入門 |
基礎 |
標準 |
発展 |
応用 |
実用 |
| 入力 | 削除 | 削入 | 移動 | yank | 他 | 注特 |
自分が使いそうなものだけしかおいてません。 間違ってたらごめんなさい。 ご連絡頂けると幸いです。訂正させて頂きます。 | |
| ※※※※※※VIの使い方(基礎編)※※※※※※ |
| ◇保存 |
:w [file] |
| ◇ファイルを開く |
:e [file] |
| □指定行へ移動 line: 行数 |
lineG |
| ◇指定行へ移動 |
:line |
| ◇現在行からline行下へ移動 |
line |
| □置き換え(1字) |
r |
| ■置き換え(任意) |
R |
| ■1字置き換え後挿入 |
s |
| ■行削除後挿入 |
cc , S |
| □行yank |
yy |
| □貼付(カーソルの後) |
p |
| □貼付(カーソルの前) |
P |
| □行連結(改行削除) |
J |
| ■行挿入(現在行の下) |
o |
| ■行挿入(現在行の上) |
O |
| ■挿入(現在行の先頭) |
I |
| ■挿入(現在行の末尾) |
A |
| □削除(前1字) |
X |
| □カーソルから行末まで削除 |
D |
| □行操作取消 |
U |
| |
|
| ※※※※※※VIの使い方(入門編)※※※※※※ |
| ◇起動 |
$vi [file] |
| □コマンドモードに移行 |
〔ESC〕 |
| ◇更新後終了 |
:wq |
| □更新後終了 |
ZZ |
| ◇強制終了 |
:q! |
| □上に移動 |
k , 〔↑〕 |
| □下に移動 |
j , 〔↓〕 |
| □左に移動 |
h , 〔←〕 |
| □右に移動 |
l , 〔→〕 |
| ■挿入(カーソルの前) |
i |
| ■挿入(カーソルの後) |
a |
| □削除(1文字) |
x |
| □削除(現在行) |
dd |
| □直前コマンド取消 |
u |
| |
|
| ※※※※※※VIの使い方(標準編)※※※※※※ |
| ◇行移動(指定行の下) |
:mline |
| ◇行複写(指定行の下) |
:tline |
| ◇行番号表示 |
:se nu |
| ◇行番号非表示 |
:se nonu |
| ◇stringを順方検索移動 |
/string |
| ◇stringを逆方検索移動 |
?string |
| □次を検索移動 |
n |
| □前を検索移動 |
N |
| □行内charを順方検索移動 |
fchar |
| □行内charを順方検索直前移動 |
tchar |
| □1行目の先頭へ移動 |
H |
| □中間行の先頭へ移動 |
M |
| □最終行の先頭へ移動 |
G , L |
| □現在行の先頭へ移動 |
0 , | |
| □現在行の先頭(除空白)へ移動 |
^ |
| □上の行の先頭へ移動 |
- |
| □下の行の先頭へ移動 |
+ |
| □次単語の先頭へ移動 |
w |
| □前単語の先頭へ移動 |
b |
| □単語の最後へ移動 |
e |
| □現在行の末尾へ移動 |
$ |
| □対応する(){}[]に移動 |
% |
| |
|
| ※※※※※※VIの使い方(発展編)※※※※※※※ |
| ◇shellコマンド実行 |
:!cmd |
| ◇ファイル読込挿入(下の行) |
:r [file] |
| □大文字⇔小文字入替 |
~ |
| □コマンドの繰返し |
. |
| □現在行シフト |
>> |
| □現在行シフト削除 |
<< |
| □画面再表示 |
〔Ctrl〕+ l |
| □1ページ先へ |
〔Ctrl〕+ f |
| □1ページ戻る |
〔Ctrl〕+ b |
| □半ページ先へ |
〔Ctrl〕+ d |
| □半ページ戻る |
〔Ctrl〕+ u |
□ファイル情報表示 |
〔Ctrl〕+ g |
| ◇一時的にshellに移行 |
:sh |
| ◇shell→vi |
exit |
| □exで編集 |
Q |
| ◇ex→vi |
vi |
| ◇setオプション表示 |
:se |
| ◇すべてのオプション表示 |
:se all |
| ◇編集ファイル一覧表示 |
:args |
| ◇次のファイルを編集 |
:n |
| ◇保存状態から再編集 !:強制 |
:e! |
| ◇1つ前の編集ファイルへ戻る |
:e# |
| |
|
| ※※※※※※VIの使い方(応用編)※※※※※※ |
◇shellコマンド実行結果挿入 |
!!cmd |
□指定削除 mov: G, ^, w, b,… ex) dw:1単語削除 |
dmov |
| □指定COPY |
ymov |
■指定削除後挿入 (削除最終位置を$表示) |
cmov |
◇paを含む行を指定し、 cmdを実行 cmd: d(消去), s(置換),… |
:g/pa/cmd |
◇paを含まない行を指定し、 cmdを実行 |
:v/pa/cmd |
◇paをreに置換 op : g(行内の全patを) c(確認 y /〔CR〕) |
:s/pa/re/[op] |
| □置換繰返し |
& |
| ◇置換繰返し |
:&, :~ |
◇略記登録 (入力paをreと解釈) ex) :ab VI visual editor |
:ab pa re |
| ◇略記登録確認 |
:ab |
| ◇略記登録解除 |
:unab pa |
| □マーク登録 |
m[a-z] |
| □マーク登録位置に移動 |
`[a-z] |
| □マーク登録行に移動 |
'[a-z] |
| |
|
| ※※※※※※VIの使い方(実用編)※※※※※※ |
| □1字交換 |
xp |
| □行交換 |
ddp |
| □1行目の先頭へ移動 |
1G |
| □全行シフト |
G>H, H>G |
| ◇全行シフト |
:%> (%:全行) |
| ◇置換 |
:s/\(cat\), \(dog\)/\u\2 and \1 「cat, dog」を「Dog and cat」に置換 |
:%s/no/yes/g ファイル全てのnoをyesに置換 |
:%v/(/s/int/double/ ( がない行で最初のintをdoubleに置換 |
:%s/.*/\L& ファイル全ての文字を小文字に |
| ◇日時を最終行に挿入 |
:$r!date |
| ◇現在行の行数確認 |
:.= |
| ◇行番号付内容確認 |
:3,5# 3〜5行目を確認 |
| ◇行番号付印刷 |
:!cat -n % | lp 編集ファイル(%)を印刷 |
| |
|
| ※※※注意する特殊文字と正規表現※※※※ |
| . |
・任意の1字(除改行) |
[ ]で囲まない場合と \の直後にない場合 |
| * |
・直前字0回以上の繰返し |
[ |
・]までの文字列の1字 ex) [abc]:a,b,cのどれか (文字列先頭が^、先頭や末尾以外の-は他意) |
\ |
・直後の. * [ \ ^ $ &の特殊効力無効 ・直後の< > ( ) { } u U l Lの特殊化 |
^ |
・]までの文字列以外の1字(除改行) (文字列の先頭や末尾以外の-はASCII範囲) ex) [^0-9a]:数字とa以外の1字(除改行) ・行頭 |
[の直後 [^ 正規表現の先頭 |
| $ |
・行末 |
正規表現の末尾 |
| & |
・直前の検索パターン |
\の直後にない場合 |
| ( |
・参照パターン化の開始位置 |
\の直後 \( |
| ) |
・参照パターン化の終了位置 |
\の直後 \) |
| < |
・\<の直後の字で始まる単語の先頭 |
\の直後 \< |
| > |
・\>の直前の字で終わる単語の末尾 |
\の直後 \> |
{ |
・\{の直前の字の繰返し指定開始 char\{m\} charのm回繰返し char\{m,\} charのm回以上繰返し char\{m,n\} charのm〜n回の繰返し |
\の直後 \{ |
} |
・繰返し指定終了 ex)p\{2,5\}:pの2〜5回繰返し |
\の直後 \} |
| u |
・直後の文字を大文字に |
\の直後 \u |
| l |
・直後の文字を小文字に |
\の直後 \l |
| U |
・直後の文字列を大文字に |
\の直後 \U |
| L |
・直後の文字列を小文字に |
\の直後 \L |
| |
|