体操4

(1-2)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4"

 

(1-3)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep JR東日本

JR東日本(赤文字)が二つ表示される。→JR東日本という文字を含む列が二行あるということ。

 

(1-4)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E "^JR東日本"

^ 正規文字 行頭のJR東日本を表示させる

二つの赤文字のJR東日本のうち最初のものが表示される

 

(1-5)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本"

交通情報から行頭のJR東日本と書かれた言葉から後50行抜き出す。 -A 行数 で単語の後ろ50行も抜き出す

 

(1-6) w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | grep -v 遅延情報はありません

事故を起こしていない路線 

-v オプション “遅延情報はありません” →遅延情報のない情報を表示、-vオプションは~を除く

|行頭のJR東日本の文字から下50行を表示|”遅延情報はありません”を除いた列を表示|

 

(1-7)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | awk '{print $1}'

路線名の一列目だけ取り出す

awkコマンドを使う {primt $} 

|行頭のJR東日本の文字から下50行を表示|その中から路線名の一列目を取り出す|

 

(1-8)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | awk '{print $1}' | sed "s/線/にゃー/g"

|行頭のJR東日本の文字から下50行を表示|その中から路線名の一列目を取り出す|“線”という文字を“にゃー”という文字に変える|

 

(1-9)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | sed "s/.*線/にゃー/g"

・「線」の前の任意文字列をにゃーに置換。「.*」は正規表現の任意の文字列(文字. の繰り返し*)。「.*線」で「線」の前の任意の文字列

|行頭のJR東日本の文字から下50行を表示|“線”という文字の前を含めた文字列を“にゃー”という文字に変える|

 

(1-10)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | awk '{print $1}' | sed "s/線/にゃー/g" | sed "s/\[.*\]//g"

・[川崎~横須賀]のような部分を削除。正規表現の任意の文字列(文字. の繰り返し*)「.*」。「\[.*\]」で[任意の文字列]を表す。\はエスケープ文字で。「[」が正規表現記号でなく文字という印

|行頭のJR東日本の文字から下50行を表示|その中から路線名の一列目を取り出す|“線”という文字を“にゃー”という文字に変える|[.*]←各括弧と中の文字を消すために、\←(バックスラッシュ)(エスケープ)を付けて消す|

 

(やってみた)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | awk '{print $1}' | sed "s/線/にゃー/g" | sed "s/(.*)//g"

()←まる括弧の中の文字を消す

(やってみる)w3m -dump "https://transit.yahoo.co.jp/diainfo/area/4" | grep -E -A 50 "^JR東日本" | awk '{print $1}' | sed "s/線/にゃー/g" | sed "s/\[.*\]//g" | sed "s/(.*)//g" 

○○にゃーという文字だけにする