ex

exはラインエディタです。
ファイルのテキストを1行ずつ編集することができます。

viからexのコマンドを使うことができます。
石器時代のツールだけど、こちらの方が便利な場合もあるようです。
状況に応じてviのコマンドとexのコマンドを使い分けると良いです。

viからexのコマンドを使うときは頭に:をつけます。
exは行単位で処理をするので、カーソルのある行以外は見えてないような気持ちです。

コマンドの構成は次の形。
対象の行 + コマンド + 引数

「どの行を?」というのを意識しているツールです。
だから、”1,10w”というコマンドで「10行目までを保存」とかってことも可能です。

(1)行の指定方法
基本的には「始まり,終わり」の形で指定。
$:最終行
.:カレント行

行番号の中では、加法減法が使える。
これは便利。

%:全ての行

(2)基本的なコマンド
r:読み込み

w:保存
q:終了
wq:保存して終了
x:保存して終了(変更がある場合のみ保存)

d:削除
m:移動
co:コピー
t:コピー
pu:バッファからペースト

=:行の総数を表示
.=:カレント行の行番号を表示
/pattern/=:patternにマッチする行の番号を表示

(3)基本的でないコマンド
g:検索
g!:一致しないものを検索

s:置換
これは”s/old/new/option”という、おなじみの形式。
パターンには正規表現を利用できる。
オプションとしては、
g:行の全ての一致に対して置き換え
c:置き換えを確認する

e:新しいファイルを編集
n:次のファイルに移動
rew:最初のファイルに移動
last:最後のファイルに移動
arg:編集中のファイルを表示

一つのウィンドウでマルチにファイルを編集できる。
といっても、移動するときは毎回保存が必要。
バッファなどを共有できるという点で有利。

set:オプションを設定する
!:UNIXコマンドを実行
sh:シェルを起動

ab:単語の略記を登録
unab:解除

map:独自のコマンドをマッピングする
unmap:解除

コメント

タイトルとURLをコピーしました