お知らせ+活動記録+たわごと

HP と Twitter を補完するとともに、互いの密接な連携を図るため、本ブログを開設した。三位一体を目指す。情報提供、広報活動、教育・啓蒙活動の一環として、肩の力を抜き、冗長性を廃し、簡にして要を得た文章を書くよう心がける。
<< December 2018 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>
 
MOBILE
qrcode
PROFILE
無料ブログ作成サービス JUGEM
 
二つ以上のスペースで区切られた文字列を取り出す
文字列 '␣␣␣2␣␣3␣␣␣4␣␣5' の先頭の空白 3 つを sed で削除し、tr により連続空白を 1 つの空白にまとめた上で、cut で 3 番目のフィールドを出力ための命令は次の通り。

% echo '␣␣␣2␣␣3␣␣␣4␣␣5' | sed 's/^ *//' | tr -s '␣' | cut -d '␣' -f 3
4

tr コマンドでオプション -s を指定すると、連続した同一文字(この場合、空白)が 1 文字に置き換えられる。自己満足に過ぎないものの、低速な awk を使わず済むのは心地よい。

sed で先頭の空白を削除しないと、先頭にヌル文字が存在すると見なされる。そこで、

% echo '␣␣␣2␣␣3␣␣␣4␣␣5' | tr -s '␣' | cut -d '␣' -f 4
4

としてもよい。
コメント
コメントする









 

(C) 2018 ブログ JUGEM Some Rights Reserved.