|
|
行1: |
行1: |
− | == sed とは? ==
| + | #REDIRECT [[Wikipedia:Sed_(コンピュータ)]] を参照してください。 |
− | | + | |
− | [[MacOSX|Mac OS X]] に標準で搭載されているテキスト変換、抽出などを行うのに使用されるプログラム。詳しくは [[Wikipedia:sed]] などを参照して下さい。iSED は旧Mac OSでも使用できます。
| + | |
− | | + | |
− | iSED
| + | |
− | *http://www.jp-lightway.com/download/index.html
| + | |
− | | + | |
− | *[http://journal.mycom.co.jp/news/2009/05/01/070/index.html ストリームエディタ「GNU sed」最新版が公開 - GPLv3にライセンス変更] - マイコミジャーナル (2009-05-01)
| + | |
− | *http://homepage.mac.com/matsuan_tamachan/software/GnuSed.html
| + | |
− | | + | |
− | == Tips ==
| + | |
− | | + | |
− | === テキストの一部を抽出 ===
| + | |
− | | + | |
− | *1行目から最初の空行までを表示
| + | |
− | sed -n '1,/^$/p' filename.txt
| + | |
− | | + | |
− | 1行目から最初の空行までを除いて表示
| + | |
− | sed '1,/^$/d' filename.txt
| + | |
− | | + | |
− | ===拡張正規表現を使うには===
| + | |
− | | + | |
− | sed で用いることのできる正規表現は POSIX で分類されるところの基本正規表現 (Basic Regular Expressions - BRE) になります。
| + | |
− | BRE では、パターンの繰り返し回数を指定する <tt>+, ?, {m,n}</tt> や lookahead を表す <tt>(?=...), (?!...) </tt> の記法がサポートされていません。
| + | |
− | | + | |
− | 拡張正規表現 (Extended Regular Expression - ERE) を使いたい場合には、sed の -E オプションを利用できます。
| + | |
− | ただし、-E オプションは FreeBSD 由来の sed でしか使えないことに注意してください。
| + | |
− | ([[MacOSX|Mac OS X]] の sed は FreeBSD の系統に属します。)
| + | |
− | | + | |
− | あるいは、[[Perl|perl]] のワンライナーで済ませる方法もあります。可搬性を考えるなら、こちらのほうが良いでしょう。
| + | |
− | | + | |
− | (ex.)
| + | |
− | $ perl -pi.bak -e "s|foo|bar|g" zod.txt
| + | |
− | | + | |
− | | + | |
− | == GNU sed ==
| + | |
− | | + | |
− | 標準搭載されている sed ではなく GNU sed もインストールしてもよい。解説は
| + | |
− | http://homepage.mac.com/matsuan_tamachan/software/GnuSed.html
| + | |
− | | + | |
− | $ /usr/local/bin/sed --version
| + | |
− | GNU sed version 4.2.1
| + | |
− | | + | |
− | | + | |
− | == Wiki内の関連ページ ==
| + | |
− | | + | |
− | *[[共有コード]]
| + | |
− | | + | |
− | [[Category:ソフトウェア|Sed]]
| + | |