command
command |
description |
d |
delete |
i |
insert |
a |
append |
p |
print |
q |
quit |
y |
1文字づつ置換 |
s |
文字列を置換 |
address
複数コマンド実行 |
sed '1d; 3d' |
1行目と3行目を削除 |
複数行指定 |
sed '1,5d' |
1 - 5行目までを削除 |
指定行以外を実行 |
sed '1!d' |
1行目以外を削除 |
最終行を処理 |
sed '$d' |
最後の行を削除 |
Notice
- コマンドはシングルクオートで囲う。ダブルクオートだと、コマンドによってうまく動かない?
e.g.
sed -i '1d' tmp/original.txt
sed -i.bk '1d' tmp/original.txt
sed -f delete.sed tmp/original.txt
echo "name,value
abc,100
xyz,999" | sed -n '1p' # => name,value
echo "name,value
abc,100
xyz,999" | sed -n 's/abc/ABC/p' # => ABC
echo "abc" | sed '1i\--header--'
echo "abc
bdd" | sed 'y/b/B/'
全てのbがBになる
echo "1,a,a,a" | sed 's/a/A/2' # => 1,a,A,a