|
|
|
n 行 後
ろ の 行 を 表 し
ま す 。 n は 、
負 で な い 整 数
で す 。 n の 前
に whitespace (空 白 文 字
) を 付 加 し て 指
定 し た 場 合 も
+n と 解 釈 さ れ
ま す 。
バ ッ フ
ァ の 最 初 か ら
最 後 ま で を 表
し ま す 。 こ れ
は 1,$ と 指 定 し
た 場 合 と 同 等
で す 。
バ ッ フ
ァ 中 の 現 在 行
か ら 最 後 の 行
ま で を 表 し ま
す 。 こ れ は 、
.,$ と 指 定 し た
場 合 と 同 等 で
す 。
指 定 さ
れ た 正 規 表 現
re を 含 む 、 (現
在 行 よ り も 後
ろ の ) 次 の 行 を
表 し ま す 。 必
要 で あ れ ば 、
文 字 列 検 索 は
テ キ ス ト 先 頭
に 折 り 返 し 、
現 在 行 に 達 す
る ま で 検 索 を
行 な い ま す 。 //
は 、 最 後 に 行
な っ た 検 索 を
繰 り 返 し ま す
。
指 定 し
た 正 規 表 現 re
を 含 む 、 現 在
行 よ り 前 の 行
を 表 し ま す 。
必 要 で あ れ ば
、 文 字 列 検 索
は テ キ ス ト の
最 後 に 折 り 返
し 、 現 在 行 に
達 す る ま で 検
索 を 行 な い ま
す 。 ?? は 、 最 後
に 行 な っ た 検
索 を 繰 り 返 し
ま す 。
’lc
’k’
(mark) コ マ ン ド で マ
ー ク を つ け た
行 を 表 し ま す
。 こ こ で lc は
英 小 文 字 1 文 字
で す 。
正 規 表
現 正 規 表 現 は
テ キ ス ト を 選
択 す る 際 に 用
い る パ タ ー ン
で す 。 例 え ば
次 の ed コ マ ン
ド
g/string/
は string を 含 む 全
て の 行 を 表 示
し ま す 。 正 規
表 現 は ’s’ コ
マ ン ド で 古 い
テ キ ス ト を 新
し い テ キ ス ト
で 置 き 換 え る
際 に も 用 い ら
れ ま す 。 文 字
リ テ ラ ル を 指
定 す る の に 加
え 、 正 規 表 現
は 文 字 列 の ク
ラ ス を 表 現 す
る こ と が で き
ま す 。 こ の よ
う に し て 表 現
さ れ た 文 字 列
は 、 そ れ に 対
応 す る 正 規 表
現 に 「 マ ッ チ
す る 」 と 言 い
ま す 。 あ る 正
規 表 現 が 一 つ
の 行 の 中 の 複
数 の 文 字 列 に
マ ッ チ す る 場
合 、 マ ッ チ す
る 部 分 の う ち
最 も 左 に あ っ
て 最 も 長 い も
の が 選 択 さ れ
ま す 。 正 規 表
現 を 組 み 立 て
る 際 に は 以 下
の シ ン ボ ル が
用 い ら れ ま す :
|
c 以 下 に
挙 げ る も の を
除 く 任 意 の 文
字 |
|
c は 、
そ の 文 字 自 身
に マ ッ チ し ま |
す 。 こ
の よ う な 文 字
に は ’{’, ’}’,
’(’, ’)’, ’<’,
’>’ が 含 ま れ
ま す 。
|
\c バ ッ
ク ス ラ ッ シ ュ
で エ ス ケ ー プ
し た 文 字 |
|
c は 、
そ の 文 字 自 身
に マ ッ チ |
し ま す
。 た だ し ’{’,
’}’, ’(’, ’)’,
’<’, ’>’ を 除
き ま す 。
|
. 任 意 の
一 文 字 に マ ッ
チ し ま す 。 |
|
[char−class]
文 字 ク ラ ス
char−class に 含 ま れ
る 任 意 の 一 文
字 に マ ッ チ し
ま す 。 文 字 ク
ラ ス char−class に
’]’ を 含 め る に
は 、 文 字 ’]’ を
最 初 の 文 字 に
指 定 し ま す 。
文 字 の 範 囲 を
指 定 す る に は
、 範 囲 の 両 端
の 文 字 の 間 を
’−’ で つ な ぎ
ま す 。 例 え ば
’a−z’ は 小 文 字
全 体 を 表 し ま
す 。 以 下 の よ
う な リ テ ラ ル
表 記 も 、 文 字
集 合 を 指 定 す
る た め に 文 字
ク ラ ス char−class で
使 用 す る こ と
が で き ま す :
[:alnum:] [:cntrl:] [:lower:] [:space:]
[:alpha:] [:digit:] [:print:] [:upper:]
[:blank:] [:graph:] [:punct:] [:xdigit:]
文 字 ク ラ ス
char−class の 最 初 あ
る い は 最 後 の
文 字 と し て
’−’ が 用 い ら
れ る と 、 そ れ
は そ の 文 字 自
身 に マ ッ チ し
ま す 。 文 字 ク
ラ ス char−class 中 の
こ れ 以 外 の 文
字 は 全 て 、 そ
れ ら 自 身 に マ
ッ チ し ま す 。
以 下 の 形 式 の
文 字 ク ラ ス
char−class の パ タ ー
ン
[.col−elm.]
と [=col−elm=] は
locale(5) に 沿 っ て
解 釈 さ れ ま す
(現 在 の と こ ろ
サ ポ ー ト さ れ
ま せ ん )。 こ こ
で col−elm は collating
element で す 。 詳 し
い 説 明 は regex(3) を
参 照 し て 下 さ
い 。
[^char−class]
文 字 ク ラ ス
char−class に 含 ま れ
な い 、 改 行 以
外 の 任 意 の 一
文 字 に マ ッ チ
し ま す 。 文 字
ク ラ ス char−class は
上 で 定 義 し て
い ま す 。
|
^ |
|
’^’ が 正 規
表 現 の 最 初 の
文 字 で あ る 場
合 、 そ の 正 規
表 現 は 行 頭 で
の み マ ッ チ し
ま す 。 そ れ 以
外 の 場 合 、
’^’ は そ れ 自
身 に マ ッ チ し
ま す 。 |
|
$ |
|
’$’ が 正 規
表 現 の 最 後 の
文 字 で あ る 場
合 、 そ の 正 規
表 現 は 行 末 で
の み マ ッ チ し
ま す 。 そ れ 以
外 の 場 合 、
’$’ は そ れ 自
身 に マ ッ チ し
ま す 。
部 分 式
(subexpression) re を 定 義
し ま す 。 部 分
式 は ネ ス ト で
き ま す 。 こ れ
以 降 、 ’\n’ の
形 式 の 後 方 参
照 は 、 n 番 目
の 部 分 式 に マ
ッ チ し た テ キ
ス ト に 展 開 さ
れ ま す (n は [1,9] の
範 囲 の 数 )。 例
え ば 、 正 規 表
現 ’\(a.c\)\1’ は 、 同
じ 文 字 列 が 隣
接 し て い る よ
う な 任 意 の 文
字 列 に マ ッ チ
し ま す 。 部 分
式 は 左 側 の デ
リ ミ タ か ら 順
に 番 号 が 振 ら
れ ま す 。
直 前 に
あ る 単 一 文 字
の 正 規 表 現 あ
る い は そ の 部
分 式 の ゼ ロ 回
以 上 の 繰 り 返
し に マ ッ チ し
ま す 。 * が 正
規 表 現 あ る い
は そ の 部 分 式
の 最 初 の 文 字
と し て 用 い ら
れ た 場 合 、 *
は そ の 文 字 自
身 に マ ッ チ し
ま す 。 * 演 算
子 は 時 に 予 期
し な い 結 果 を
も た ら す こ と
が あ り ま す 。
例 え ば 、 正 規
表 現 ’b*’ は 文
字 列 ’abbb’ の 先
頭 に マ ッ チ し
ま す (部 分 文 字
列 ’bbb’ で は あ
り ま せ ん )。 こ
れ は ヌ ル へ の
マ ッ チ が 最 も
左 に あ る マ ッ
チ だ か ら で す
。
\{n,m\}
\{n,\}
\{n\} 直 前 に あ る
単 一 文 字 の 正
規 表 現 あ る い
は そ の 部 分 式
の 、 n 回 以 上
m 回 以 下 の 繰
り 返 し に マ ッ
チ し ま す 。 m
が 省 略 さ れ た
場 合 、 n 回 以
上 の 繰 り 返 し
に マ ッ チ し ま
す 。 さ ら に コ
ン マ も 省 略 さ
れ た 場 合 、 ち
ょ う ど n 回 の
繰 り 返 し に の
み マ ッ チ し ま
す 。 こ の 表 現
が 正 規 表 現 や
部 分 式 の 先 頭
に 登 場 し た 場
合 は 、 リ テ ラ
ル と し て 解 釈
さ れ ま す (す な
わ ち 、 正 規 表
現 ’\{2\}’ は 文 字
列 ’{2}’ な ど に
マ ッ チ し ま す
。
\<
\> こ れ に 続 く 単
一 文 字 の 正 規
表 現 あ る い は
そ の 部 分 式 が
、 ワ ー ド の 先
頭 (\<) や 末 尾 (\>) で
の み マ ッ チ す
る よ う に し ま
す 。 ワ ー ド と
は ASCII で 英 数 字 文
字 が 続 く 文 字
列 で 最 長 の も
の で す (ア ン ダ
ー ス コ ア (_) も 文
字 列 に 含 ま れ
ま す )。
以 下 の
拡 張 演 算 子 は
、 以 前 か ら の
ed の 書 式 と 区
別 す る た め 、
バ ッ ク ス ラ ッ
シ ュ (\) か ら 始 ま
り ま す 。
|
\` |
|
|
|
\´ |
|
無 条 件
に 、 行 の 先 頭 |
|
|
|
(\`) や 行 の
末 尾 (\´) に マ ッ
チ し ま す 。 |
|
\? |
|
1 文 字 の 正 規 表
現 か 直 前 の 部
分 式 が 0 個 か 1 個
あ る 場 合 に マ
ッ チ し ま す 。
例 え ば 、 正 規
表 現 ’a[bd]\?c’ は 、
文 字 列 ’abc’,
’adc’, ’ac’ に マ
ッ チ し ま す 。 \?
が 正 規 表 現 か
部 分 式 の 先 頭
に 登 場 し た 場
合 は 、 リ テ ラ
ル ’?’ に マ ッ チ
し ま す 。 |
|
\+ |
|
1 文 字 の 正 規 表
現 ま た は 直 前
の 部 分 式 の 1 回
以 上 の 繰 り 返
し に マ ッ チ し
ま す 。 正 規 表
現 ’a\+’ は ’aa*’
の 短 い 書 き 方
で す 。 \+ が 正 規
表 現 や 部 分 式
の 先 頭 に 登 場
し た 場 合 は 、
リ テ ラ ル ’+’ に
マ ッ チ し ま す
。
ワ ー ド
の 先 頭 や 末 尾
に マ ッ チ し ま
す (マ ッ チ す る
の は 空 文 字 列
で す )。 正 規 表
現 ’\bhello\b’ は
’\<hello\>’ と 同 じ
で す 。 但 し 、
’\b\b’ は 有 効 な
正 規 表 現 で す
が 、 ’\<\>’ は そ
う で は あ り ま
せ ん 。
ワ ー ド
内 に マ ッ チ し
ま す (マ ッ チ す
る の は 空 文 字
列 で す )。
\w ワ ー ド を 構 成
す る 任 意 の 文
字 に マ
ッ チ し ま す 。
|
\W ワ ー ド を 構 成
す る 文 字 以 外
の 任 意 の 文 字
に マ ッ チ し ま
す 。 コ マ ン ド
全 て の |
ed コ マ
ン ド は 、 1 文 字
か ら な り ま す
が 、 追 加 パ ラ
メ ー タ が 必 要
な コ マ ン ド も
あ り ま す 。 コ
マ ン ド の パ ラ
メ ー タ が 複 数
の 行 に わ た る
場 合 に は 、 そ
の パ ラ メ ー タ
を 含 め た コ マ
ン ド の 終 り を
含 む 行 を 除 き
、 行 末 に バ ッ
ク ス ラ ッ シ ュ (\)
を 付 加 し て 下
さ い 。 一 般 的
に は 、 1 行 ご と
に 1 コ マ ン ド を
入 れ る こ と が
許 さ れ て い ま
す 。 し か し な
が ら 、 ほ と ん
ど の コ マ ン ド
は 、 コ マ ン ド
実 行 を 行 な っ
た 後 の デ ー タ
更 新 そ の 他 を
確 認 す る た め
に 、 ’p’ (print),
’l’ (list), ’n’
(enumerate) の よ う な 表
示 系 の コ マ ン
ド を 同 時 に 指
定 で き ま す 。
イ ン タ ラ プ ト
(一 般 的 に は ^C) を
入 力 す る こ と
で 、 現 在 実 行
し て い る コ マ
ン ド を 強 制 終
了 し 、 コ マ ン
ド モ ー ド に 戻
す こ と が で き
ま す 。
ed
は 、 以 下 の コ
マ ン ド を 使 用
で き ま す 。 コ
マ ン ド 実 行 時
に 何 の 指 定 も
な い 場 合 の デ
フ ォ ル ト の 行
番 号 も し く は
行 範 囲 が 括 弧
内 に 示 さ れ て
い ま す 。
|
(.)a 指 定 し
た 行 の 後 に テ
キ ス ト を 追 加
し ま す 。 行 番
号 |
|
0 (ゼ ロ ) も
指 定 で |
き ま す
。 テ キ ス ト は
入 力 モ ー ド で
入 力 さ れ て い
き ま す 。 現 在
行 番 号 は 、 入
力 さ れ た 最 後
の 行 に 設 定 さ
れ ま す 。
|
(.,.)c バ ッ
フ ァ 内 の 指 定
し た 行 を 変 更
し ま す 。 指 定
し た 行 の デ ー
タ は 、 バ ッ フ
ァ か ら 消 去 さ
れ 、 そ こ に 対
し て テ キ ス ト
デ ー タ を 入 力
す る よ う に な
り ま す 。 テ キ
ス ト は 入 力 モ
ー ド で 入 力 さ
れ て い き ま す
。 現 在 行 番 号
は 、 入 力 し た
最 後 の 行 に 設
定 さ れ ま す 。 |
|
(.,.)d 指 定 し た 範
囲 を バ ッ フ ァ
か ら 削 除 し ま
す 。 削 除 し た
範 囲 の 後 に 行
が 続 い て い る
場 合 、 現 在 行
番 号 は 、 そ の
行 に 設 定 さ れ
ま す 。 そ う で
な い 場 合 に は
、 現 在 行 番 号
は 、 削 除 さ れ
た 範 囲 の 前 の
行 に 設 定 さ れ
ま す 。 |
|
e file |
file
を 編 集 し 、 デ
フ ォ ル ト の フ
ァ イ ル 名 を 設
定 し ま す 。 も
し file が 指 定 さ
れ な か っ た 場
合 に は 、 デ フ
ォ ル ト の フ ァ
イ ル 名 が 使 用
さ れ ま す 。 本
コ マ ン ド 実 行
時 に 、 そ れ ま
で 別 の フ ァ イ
ル を 編 集 し て
い た 場 合 に は
、 そ の 内 容 は
す べ て 消 去 さ
れ 、 新 し い フ
ァ イ ル が 読 み
込 ま れ ま す 。
現 在 行 番 号 は
、 入 力 さ れ た
最 後 の 行 に 設
定 さ れ ま す 。
e !command
!command で
指 定 さ れ た コ
マ ン ド を 実 行
し 、 そ の 結 果
と し て 標 準 出
力 へ 出 力 さ れ
た デ ー タ を 編
集 し ま す (後 述
す る !command を 参 照
し て 下 さ い )。
デ フ ォ ル ト の
フ ァ イ ル 名 は
変 更 さ れ ま せ
ん 。 command の 出 力
が 読 み 込 ま れ
る 前 に 、 バ ッ
フ ァ 内 に 存 在
し た 行 は す べ
て 消 去 さ れ ま
す 。 現 在 行 番
号 は 、 入 力 さ
れ た 最 後 の 行
に 設 定 さ れ ま
す 。
|
E file 無 条 件
で |
|
file で 指 定 し た
フ ァ イ ル を 読
み 込 み 、 編 集
し ま す 。 e コ
マ |
ン ド と
動 作 は 似 て い
ま す が 、 す で
に バ ッ フ ァ 上
の デ ー タ に 変
更 が 加 え ら れ
て い る 場 合 で
も 、 未 書 き 込
み の 変 更 を 警
告 を 出 さ ず に
捨 て て し ま う
点 が 異 な り ま
す 。 現 在 行 番
号 は 、 入 力 さ
れ た 最 後 の 行
に 設 定 さ れ ま
す 。
|
f file デ
フ ォ ル ト フ ァ
イ ル 名 を |
|
file に 設
定 し ま す 。 file
名 が 指 定 さ れ
な |
い 場 合
に は 、 デ フ ォ
ル ト フ ァ イ ル
名 が 表 示 さ れ
ま す 。
(1,$)g/re/command−list
command−list
で 指 定 さ れ た
コ マ ン ド を 、
指 定 し た 正 規
表 現 re に 一 致
す る 各 行 に 対
し て 実 行 し ま
す 。 現 在 行 番
号 は 、 command−list
で 指 定 さ れ た
コ マ ン ド が 実
行 さ れ る 前 に
、 指 定 し た 正
規 表 現 に 一 致
し た 行 に 設 定
さ れ ま す 。
’g’ コ マ ン ド
が 終 了 し た 場
合 、 現 在 行 番
号 は 最 後 に
command−list 実 行 の
影 響 を 受 け た
行 に 設 定 さ れ
ま す 。
command−list
で 指 定 さ れ る
コ マ ン ド は 、 1
行 ご と に 1 つ ず
つ 書 か れ る 必
要 が あ り ま す
。 各 コ マ ン ド
行 の 終 り に は
、 一 番 最 後 の
コ マ ン ド 行 を
除 い て は バ ッ
ク ス ラ ッ シ ュ (\)
を 記 述 す る 必
要 が あ り ま す
。 コ マ ン ド
’g’, ’G’,
’v’, ’V’ を
除 く す べ て の
コ マ ン ド を 指
定 可 能 で す 。
command−list 中 の 空
行 は 、 ’p’ コ
マ ン ド と 同 等
に 扱 わ れ ま す
。
(1,$)G/re/ 指
定 し た 正 規 表
現 re に 一 致 し
た 行 に 対 し て
、 対 話 編 集 を
行 な い ま す 。
指 定 し た 正 規
表 現 に 一 致 す
る 文 字 列 を 含
む 行 が あ る と
、 そ の 行 を 表
示 し 、 現 在 行
番 号 を 設 定 し
ま す 。 そ し て
、 ユ ー ザ に
command−list の 入 力
を 促 し ま す 。
’G’ コ マ ン ド
が 終 了 し た 場
合 、 現 在 行 番
号 は 、 command−list
実 行 の 影 響 を
受 け た 最 後 の
行 に 設 定 さ れ
ま す 。
command−list
の 記 述 形 式 は
、 g コ マ ン ド
で 指 定 す る も
の と 同 じ で す
。 改 行 の み の
場 合 は 、 コ マ
ン ド 実 行 を し
な い (ヌ ル コ マ
ン ド リ ス ト を
指 定 し た ) も の
と み な さ れ ま
す 。 ’&’ 文 字
の み を 入 力 し
た 場 合 に は 、
直 前 に 実 行 し
た (ヌ ル コ マ ン
ド リ ス ト で は
な い ) コ マ ン ド
を 再 実 行 し ま
す 。
|
H エ ラ ー メ ッ セ
ー ジ の 出 力 の
有 無 を 切 り 替
え ま す 。 デ フ
ォ ル ト で は 、
エ ラ ー メ ッ セ
ー ジ は 出 力 さ
れ ま せ ん 。 |
ed ス ク リ
プ ト を 作 成 す
る 場 合 、 ス ク
リ プ ト の デ バ
ッ グ の た め に
、 本 コ マ ン ド
を 最 初 に 実 行
す る こ と を お
す す め し ま す
。
|
h 最 後 に
表 示 さ れ た エ
ラ ー メ ッ セ ー
ジ を 表 示 し ま
す 。 |
|
(.)i 編 集 バ ッ フ
ァ 中 の 現 在 行
の 前 に 、 テ キ
ス ト を 挿 入 し
ま す 。 テ キ ス
ト は 入 力 モ ー
ド で 入 力 さ れ
て い き ま す 。
現 在 行 番 号 は
、 入 力 さ れ た
最 後 の 行 に 設
定 さ れ ま す 。 |
(.,.+1)j 指 定
し た 範 囲 の 行
を 1 行 に 連 結 し
ま す 。 指 定 し
た 行 は バ ッ フ
ァ か ら 削 除 さ
れ 、 そ の 行 の
内 容 を 含 む 1 行
に 置 き 換 え ら
れ ま す 。 現 在
行 番 号 は 、 置
き 換 え ら れ た
行 に 設 定 さ れ
ま す 。
|
(.)klc 行 に 、 英
小 文 字 |
|
lc で 指 定 し た
マ ー ク を つ け
ま す 。 そ の 後
、 マ ー ク を |
つ け ら
れ た 行 は 、 コ
マ ン ド 中 で
’lc (つ ま り 、
シ ン グ ル ク ォ
ー ト と 小 文 字
lc) と し て 指 定
で き る よ う に
な り ま す 。 マ
ー ク は 、 そ の
行 が 削 除 さ れ
る か も し く は
変 更 さ れ る か
し な い 限 り 、
消 え る こ と は
あ り ま せ ん 。
|
(.,.)l 指 定
し た 範 囲 の 行
の 内 容 を 見 や
す く 表 示 し ま
す 。 端 末 か ら
起 動 さ れ た 場
合 、 各 ペ ー ジ
の 終 わ り で 表
示 を 一 時 停 止
し 、 改 行 が 入
力 さ れ る ま で
待 ち ま す 。 現
在 行 番 号 は 、
表 示 さ れ た 最
後 の 行 に 設 定
さ れ ま す 。 |
(.,.)m(.) 指 定
し た 範 囲 の 行
を バ ッ フ ァ 内
で 移 動 し ま す
。 指 定 し た 行
は 、 コ マ ン ド
の 右 辺 で 指 定
し た 行 の 後 ろ
に 移 動 さ れ ま
す 。 移 動 先 の
行 と し て は 、
0 (ゼ ロ ) が 指 定
可 能 で す 。 現
在 行 番 号 は 、
移 動 さ れ た 最
後 の 行 の 移 動
後 の 行 に 設 定
さ れ ま す 。
|
(.,.)n 指 定 し た 行
の 内 容 を 、 行
番 号 つ き で 表
示 し ま す 。 現
在 行 番 号 は 、
表 示 さ れ た 最
後 の 行 に 設 定
さ れ ま す 。 |
|
(.,.)p 指 定 し た 範
囲 の 行 の 内 容
を 表 示 し ま す
。 端 末 か ら 起
動 さ れ た 場 合
、 |
ed は 各
ペ ー ジ の 終 わ
り で 表 示 を 一
時 停 止 し 、 改
行 が 入 力 さ れ
る ま で 待 ち ま
す 。 現 在 行 番
号 は 、 表 示 さ
れ た 最 後 の 行
に 設 定 さ れ ま
す 。
|
P コ マ ン
ド プ ロ ン プ ト
表 示 の 有 無 を
切 り 替 え ま す
。 コ マ ン ド 起
動 時 の オ プ シ
ョ ン |
−p string で
プ ロ ン プ ト が
指 定 さ れ て い
な け れ ば 、 コ
マ ン ド プ ロ ン
プ ト の 表 示 は
デ フ ォ ル ト で
オ フ に な っ て
い ま す 。
|
q |
|
ed を 終
了 し ま す 。
無 条 件
に ed を 終 了 し
ま す 。 こ の コ
マ ン ド は q コ
マ ン ド と 似 て
い ま す が 、 ま
だ フ ァ イ ル に
書 き 出 さ れ て
い な い 変 更 が
あ っ て も 警 告
せ ず に 終 了 す
る 点 が 異 な り
ま す 。
($)r file
file で 指
定 さ れ た フ ァ
イ ル を 、 指 定
し た 行 の 後 ろ
に 読 み 込 み ま
す 。 file が 指 定
さ れ な い 場 合
、 デ フ ォ ル ト
の フ ァ イ ル 名
が 読 み 込 み に
使 用 さ れ ま す
。 こ の コ マ ン
ド に 先 だ っ て
デ フ ォ ル ト の
フ ァ イ ル 名 が
設 定 さ れ て い
な い 場 合 、 デ
フ ォ ル ト の フ
ァ イ ル 名 に は
、 file で 指 定 さ
れ た も の が 設
定 さ れ ま す 。
そ れ 以 外 の 場
合 、 デ フ ォ ル
ト の フ ァ イ ル
名 は 変 更 さ れ
ま せ ん 。 現 在
行 番 号 は 、 読
み 込 ま れ た フ
ァ イ ル の 最 後
の 行 に 設 定 さ
れ ま す 。
($)r !command
command で
指 定 さ れ た コ
マ ン ド を 実 行
し 、 そ の 結 果
と し て 標 準 出
力 へ 出 力 さ れ
た デ ー タ を 指
定 し た 行 の 後
ろ に 読 み 込 み
ま す (後 述 す る !
command を 参 照 し て
下 さ い )。 デ フ
ォ ル ト の フ ァ
イ ル 名 は 変 更
さ れ ま せ ん 。
現 在 行 番 号 は
、 読 み 込 ま れ
た 最 後 の 行 の
行 番 号 に 設 定
さ れ ま す 。
|
(.,.)s/re/replacement/ |
|
(.,.)s/re/replacement/g |
|
(.,.)s/re/replacement/n
指 定 し た 行 の
テ キ ス ト 中 の
、 正 規 表 現 re
に 一 致 す る 文
字 列 を 、 文 字
列 replacement に 置 き
換 え ま す 。 デ
フ ォ ル ト で は
、 そ れ ぞ れ の
行 で 最 初 に 一
致 し た 文 字 列
の み を 置 き 換
え ま す 。 ’g’
(global) サ フ ィ ッ ク
ス が 指 定 さ れ
た 場 合 、 一 致
し た 文 字 列 は
す べ て 置 き 換
え ら れ ま す 。
’n’ サ フ ィ ッ
ク ス (’n’ は 正
の 整 数 ) が 指 定
さ れ た 場 合 、
’n’ 回 目 に 一
致 し た 文 字 列
だ け を 置 き 換
え ま す 。 指 定
し た 範 囲 で 一
度 も 文 字 列 の
置 換 が 起 こ ら
な か っ た 場 合
、 エ ラ ー と み
な さ れ ま す 。
現 在 行 番 号 は
、 最 後 に 置 換
が 発 生 し た 行
に 設 定 さ れ ま
す 。 |
re
お よ び replacement は
、 ス ペ ー ス 、
改 行 、 下 記 の
’s’ コ マ ン ド
で 使 用 さ れ る
キ ャ ラ ク タ 以
外 の す べ て の
キ ャ ラ ク タ を
用 い て 区 切 る
こ と が 可 能 で
す 。 最 後 の デ
リ ミ タ の う ち 1
つ か 2 つ が 省 略
さ れ た 場 合 、
最 後 に 文 字 列
置 換 が 発 生 し
た 行 は 、 ’p’
コ マ ン ド が 指
定 さ れ た 場 合
と 同 様 に 表 示
さ れ ま す 。
replacement
中 の エ ス ケ ー
プ さ れ て い な
い ’&’ は 、 一
致 し た 文 字 列
と 置 き 換 え ら
れ ま す 。 キ ャ
ラ ク タ シ ー ケ
ン ス ’\m’
(’m’ は [1,9] の 範
囲 の 整 数 で す )
は 、 一 致 し た
文 字 列 の ’m’
番 目 の 後 方 参
照 で 置 き 換 え
ら れ ま す 。
replacement の 中 に 入
る 文 字 が ’%’ の
み だ っ た 場 合
、 最 後 に 行 な
っ た 置 換 の
replacement が 使 用 さ
れ ま す 。 改 行
を replacement に 指 定
し た い 場 合 は
、 バ ッ ク ス ラ
ッ シ ュ を 用 い
て エ ス ケ ー プ
す れ ば 可 能 で
す 。
|
(.,.)s |
|
最 後 の 置 換 を
繰 り 返 し ま す
。 こ の 形 式 の |
|
|
|
’s’ コ マ ン
ド に は 、 回 数
を 示 す サ フ ィ
ッ ク ス ’n’ と
、 文 字 ’r’,
’g’, ’p’ の
任 意 の 組 み 合
わ せ を 指 定 で
き ま す 。 ’n’
が 指 定 さ れ る
と 、 ’n’ 回 目
に 一 致 し た 文
字 列 だ け が 置
換 さ れ ま す 。
’r’ サ フ ィ ッ
ク ス が 指 定 さ
れ る と 、 最 後
の 置 換 が 発 生
し た 文 字 列 の
変 わ り に 、 最
後 に 指 定 し た
正 規 表 現 が 使
用 さ れ ま す 。
’g’ サ フ ィ ッ
ク ス は 、 最 後
の 置 換 で 用 い
た グ ロ ー バ ル
サ フ ィ ッ ク ス
の 使 用 の 有 効
/無 効 を 切 り 替
え ま す 。 ’p’
サ フ ィ ッ ク ス
は 、 最 後 の 置
換 に 指 定 さ れ
た プ リ ン ト サ
フ ィ ッ ク ス を
反 転 し ま す 。
現 在 行 番 号 は
、 最 後 に 置 換
が 発 生 し た 行
に 設 定 さ れ ま
す 。 |
(.,.)t(.) 指 定
し た 範 囲 の 行
を 、 コ マ ン ド
文 字 の 右 辺 に
指 定 し た 行 番
号 の 後 に コ ピ
ー (つ ま り 転 送 )
し ま す 。 コ ピ
ー 先 の 行 番 号
と し て は 、
’0’ (ゼ ロ ) の
指 定 が 許 さ れ
て い ま す 。 現
在 行 番 号 は 、
コ ピ ー し た 一
番 最 後 の 行 の
行 番 号 に 設 定
さ れ ま す 。
|
u 最 後 に 実 行 し
た コ マ ン ド の
実 行 結 果 を 取
り 消 し 、 現 在
行 番 号 を 、 取
り 消 し た い コ
マ ン ド が 実 行
さ れ る 前 の も
の に 戻 し ま す
。 グ ロ ー バ ル
コ マ ン ド で あ
る |
’g’,
’G’, ’v’,
’V’ に つ い て
は 、 そ の 改 変
は 1 コ マ ン ド で
行 な わ れ た と
し て 扱 い ま す
。 ’u’ は 自 分
自 身 の 動 作 を
取 り 消 す こ と
も で き ま す 。
(1,$)v/re/command−list 指 定
し た 範 囲 の 行
の う ち 、 指 定
し た 正 規 表 現
re と 一 致 す る
文 字 列 が 含 ま
れ て い な い 行
に つ い て 、
command−list で 指 定
し た コ マ ン ド
を 実 行 し ま す
。 こ れ は ’g’
コ マ ン ド に 動
作 が 似 て い ま
す 。
(1,$)V/re/ 指 定 し た
範 囲 の 行 の う
ち 、 指 定 し た
正 規 表 現 re に
一 致 す る 文 字
列 が 含 ま れ て
い な い 行 に つ
い て 、 対 話 編
集 を 行 な い ま
す 。 こ れ は
’G’ コ マ ン ド
に 動 作 が 似 て
い ま す 。
(1,$)w file 指 定 し た
範 囲 の 行 を 、
file で 指 定 し た
フ ァ イ ル に 書
き 出 し ま す 。
そ れ ま で file に
格 納 さ れ て い
た 内 容 は 、 警
告 な し に 消 去
さ れ ま す 。 デ
フ ォ ル ト フ ァ
イ ル 名 が 設 定
さ れ て い な い
場 合 、 デ フ ォ
ル ト フ ァ イ ル
名 は file に 設 定
さ れ ま す 。 そ
れ 以 外 の 場 合
で は 、 デ フ ォ
ル ト フ ァ イ ル
名 は 変 更 さ れ
ま せ ん 。 フ ァ
イ ル 名 が 指 定
さ れ な か っ た
場 合 に は 、 デ
フ ォ ル ト フ ァ
イ ル 名 が 使 用
さ れ ま す 。 現
在 行 番 号 は 変
更 さ れ ま せ ん
。
(1,$)wq file 指 定 し た
範 囲 の 行 を file
で 指 定 し た フ
ァ イ ル に 書 き
出 し 、 ’q’ コ
マ ン ド を 実 行
し ま す 。
(1,$)w !command 指 定 し た
範 囲 の 行 の 内
容 を !command の 標 準
入 力 に 書 き 出
し ま す (’!command’
に つ い て は 、
以 下 の 説 明 を
参 照 し て 下 さ
い )。 デ フ ォ ル
ト フ ァ イ ル 名
お よ び 現 在 行
番 号 は 変 更 さ
れ ま せ ん 。
(1,$)W file 指 定 し た
範 囲 の 行 の 内
容 を file で 指 定
し た フ ァ イ ル
の 後 ろ に 追 加
書 き 込 み し ま
す 。 ’w’ コ マ
ン ド と 似 て い
ま す が 、 指 定
し た フ ァ イ ル
に そ れ ま で 格
納 さ れ て い た
内 容 が な く な
る こ と は あ り
ま せ ん 。 現 在
行 番 号 は 変 更
さ れ ま せ ん 。
|
(.)x カ ッ ト バ ッ
フ ァ の 内 容 を
指 定 さ れ た 行
の 後 ろ に コ ピ
ー |
|
(挿 入 ) し ま |
す 。 現
在 行 番 号 は 最
後 に コ ピ ー が
行 わ れ た 行 に
な り ま す 。
|
(.,.)y 指 定
し た 範 囲 の 行
の 内 容 を カ ッ
ト バ ッ フ ァ に
コ ピ ー |
|
(yank) し ま
す 。 |
カ ッ ト
バ ッ フ ァ の 内
容 は 、 こ れ 以
降 に コ マ ン ド
’y’, ’s’,
’j’, ’d’,
’c’ を 実 行 す
る と 上 書 き さ
れ ま す 。 現 在
行 番 号 は 変 更
さ れ ま せ ん 。
|
(.+1)zn 指 定
し た 行 か ら 一
度 に |
|
n 行 だ
け ス ク ロ ー ル
し ま す 。 n が
指 定 さ れ な |
い 場 合
に は 、 現 在 の
ウ ィ ン ド ウ サ
イ ズ だ け ス ク
ロ ー ル し ま す
。 現 在 行 番 号
は 、 最 後 に 表
示 し た 行 の 行
番 号 に 設 定 さ
れ ま す 。
!command
command で
指 定 し た コ マ
ン ド を 、 sh(1) を
用 い て 実 行 し
ま す 。 command の 最
初 の 文 字 が
’!’の 場 合 に は
、 そ の 文 字 は
直 前 に !command で 実
行 し た コ マ ン
ド 文 字 列 が 格
納 さ れ ま す 。
command 文 字 列 を バ
ッ ク ス ラ ッ シ
ュ (\) で エ ス ケ ー
プ し た 場 合 に
は 、 ed は 処 理
を 行 な い ま せ
ん 。 し か し 、
エ ス ケ ー プ さ
れ な い ’%’ 文
字 が あ っ た 場
合 に は 、 そ の
文 字 列 は デ フ
ォ ル ト フ ァ イ
ル 名 に 置 き 換
え ら れ ま す 。
シ ェ ル が コ マ
ン ド 実 行 か ら
戻 っ て き た 場
合 に は 、 ’!’ が
標 準 出 力 に 出
力 さ れ ま す 。
現 在 行 番 号 は
変 更 さ れ ま せ
ん 。
|
(.,.)# コ メ ン ト を
開 始 し ま す 。
改 行 ま で の 残
り の 行 は 無 視
さ れ ま す 。 行
番 号 と そ の 直
後 に セ ミ コ ロ
ン を 指 定 し た
場 合 、 現 在 行
番 号 は 指 定 さ
れ た 行 番 号 に
設 定 さ れ ま す
。 そ れ 以 外 の
場 合 、 現 在 行
番 号 は 変 更 さ
れ ま せ ん 。 |
|
($)= 指 定 さ れ た
行 の 行 番 号 を
表 示 し ま す 。 |
(.+1)newline 指 定
し た 行 を 表 示
し ま す 。 そ し
て 、 現 在 行 番
号 を 表 示 し た
行 の も の に 設
定 し ま す 。
|
ed.hup 端 末
が 回 線 切 断 し
た 場 合 に 、 |
|
ed が バ
ッ フ ァ 内 容 を
書 き 出 す フ ァ
イ |
ル 。
vi(1),
sed(1), regex(3), sh(1).
USD:12−13
B. W. Kernighan
and P. J. Plauger, Software Tools in Pascal ,
Addison−Wesley, 1981.
ed
は file 引 数 に 対
し て バ ッ ク ス
ラ ッ シ ュ エ ス
ケ ー プ 処 理 を
施 し ま す 。 つ
ま り 、 フ ァ イ
ル 名 中 で バ ッ
ク ス ラ ッ シ ュ (\)
を 前 に つ け た
文 字 は 、 リ テ
ラ ル と し て 解
釈 さ れ ま す 。
(バ
イ ナ リ で は な
い ) テ キ ス ト フ
ァ イ ル の 最 後
が 改 行 文 字 で
終 っ て い な い
場 合 、 ed は そ
れ を 読 み 書 き
す る 際 に 改 行
文 字 を 追 加 し
ま す 。 バ イ ナ
リ フ ァ イ ル の
場 合 は 、 ed は
こ の よ う な 改
行 文 字 追 加 は
行 い ま せ ん 。
1 行
あ た り の オ ー
バ ヘ ッ ド は 、
ポ イ ン タ 2 つ 、 long
int 1 つ 、 int 1 つ で す
。
エ ラ ー
が 発 生 す る と
、 ed は ’?’ を
表 示 し 、 コ マ
ン ド モ ー ド に
戻 る か 、 ス ク
リ プ ト に よ る
実 行 の エ ラ ー
の 場 合 に は プ
ロ グ ラ ム を 終
了 し ま す 。 最
後 の エ ラ ー メ
ッ セ ー ジ に つ
い て の 説 明 は
、 ’h’ (help) コ マ
ン ド を 用 い る
こ と で 表 示 可
能 で す 。 変 更
さ れ た バ ッ フ
ァ 内 の デ ー タ
を 書 き 出 さ ず
に 、 ed を 終 了
し よ う と し た
り 、 他 の フ ァ
イ ル を 編 集 し
よ う と し た り
す る と 、 エ ラ
ー に な り ま す
。 そ の 場 合 で
も 、 同 一 の コ
マ ン ド を 2 回 入
力 す る と 、 コ
マ ン ド は 成 功
し ま す 。 し か
し 、 そ れ ま で
の 未 保 存 の 編
集 結 果 は 、 す
べ て 失 わ れ ま
す 。
ed
は エ ラ ー が 発
生 し な か っ た
場 合 0 で 終 了 し
ま す 。 そ れ 以
外 の 場 合 は >0 で
終 了 し ま す 。
| | | |