このエントリーをはてなブックマークに追加

linuxでテキストファイルを編集するのを自動化したい場合が結構ある。たとえばApacheなどのプログラムをインストールするときに設定値を置換するなど。bashでこういうことをする場合はsedなどで置換を行うとよい。sedの簡単な使い方を説明します。

以下の例で頻繁的に使っている-i オプションは指定したファイルをそのまま上書きします。パイプでつないだり、リダイレクトしたりする場合は不要です。

空行を削除

sed -i '/^$/d' target.txt

文字列を削除

sed -i 's/文字列//g' target.txt

文字列を含む行を削除

sed -i '/文字列/d' target.txt

設定ファイルの特定の行を削除するときに使えます。

対象文字列を置換文字列に置換

sed -i 's/対象文字列/置換後文字列/g' target.txt

設定ファイルの値を変更したりコメントアウトしたり、逆にコメントアウトを外すときに使えます。

指定行を削除(例では2~5行

sed -i '2,5d' target.txt

データ処理用にヘッダ行を削除したりするときに使えます。

利用例

私の場合、sedはOSインストール後の設定スクリプトでよく使います。 よくやる例を以下に示します。

/etc/sudoersファイルの中の 'Defaults requiretty' 行をコメントアウトします。

# sed -i 's/Defaults.*requiretty/#Default\trequiretty/g' /etc/sudoers

この結果

修正前)
Defaults          requiretty
修正後)
# Defaults        requiretty

/etc/sudoersファイルの中の '# %wheel ALL=(ALL) ALL' 行のコメントアウトを外してwheelグループにsudoを許可します。

# sed -i 's/^#\s%wheel\s*ALL=(ALL)\s*ALL$/%wheel\tALL=(ALL)\tALL/g' /etc/sudoers

この結果

修正前)
# %wheel    ALL=(ALL)   ALL
修正後)
%wheel  ALL=(ALL)   ALL


コメント
Late awaiting akin drove acknowledgement, impact.
http://usa-onlineprednisone.net/ - usa-onlineprednisone.net.ankor <a href="http://salbutamol-ventolin-buy.net/">salbutamol-ventolin-buy.net.ankor</a> http://online-viagracanada.net/
2017-03-27 11:51:44 +0900

domperidone price in us
tetracycline tablets for fish <a href=http://tenze24.tumblr.com/#39249>tenze24-domperidone</a> pills to boost milk supply
2017-06-21 01:10:13 +0900

best site to order domperidone
ratio domperidone 10mg tablet <a href=http://wasenshi16.tumblr.com/#42414>domperidone-wasenshi16.tumblr</a> cyra medicine used for
2017-07-15 02:21:42 +0900

where can i buy domperidone online
maximum dose of domperidone for gastroparesis <a href=http://wasenshi16.tumblr.com/#92329>domperidone-wasenshi16.tumblr</a> tablets banned in india
2017-07-21 17:22:54 +0900

order domperidone online without prescription
is domperidone safe to take when pregnant <a href=http://chinakari39.tumblr.com/#45017>domperidone-chinakari39.tumblr</a> g6pd deficiency diet list
2017-08-03 22:04:32 +0900

domperidone canada over the counter
vivadone domperidone side effects <a href=http://chinakari39.tumblr.com/#30200>chinakari39-domperidone</a> blood pressure for hypotension
2017-08-10 22:29:50 +0900

where to buy domperidone in usa
paracetamol with domperidone tablets <a href=http://chinakari39.tumblr.com/#73505>domperidone without prescription</a> motilium breastfeeding maximum dose
2017-08-15 08:19:18 +0900

domperidone not increasing milk supply
health canada domperidone 2012 <a href=http://kisokika38.tumblr.com/#34769>pseudoephedrine and domperidone over the counter</a> anti nausea medication via iv
2017-11-21 17:30:49 +0900

notice domperidone mylan 10mg
omeprazole taken with domperidone <a href=http://kisokika38.tumblr.com/#34855>where can i buy domperidone uk</a> treating clogged milk duct
2017-11-27 01:42:06 +0900

omeprazole and domperidone capsules omez d
do you need prescription for domperidone <a href=http://kisokika38.tumblr.com/#78016>how to get domperidone without a prescription</a> what is paroxetine 10 mg used for
2017-11-27 16:32:21 +0900

common uses for domperidone
pantoprazole domperidone brand name <a href=http://kisokika38.tumblr.com/#58292>over the counter domperidone uk</a> does acid reflux go away
2017-12-16 02:43:24 +0900

コメント投稿
最大255
最大1000
最大255
Email never displayed on this site. 最大255
Site is displayed. 最大255

記事一覧へ