B課題 B3~5

yahooリンク https://search.yahoo.co.jp/realtime

 

B3

wget -O- https://search.yahoo.co.jp/realtime

 

w3m -O- https://search.yahoo.co.jp/realtime

w3mを起動後の操作

終了

Q 確認せずに w3m を終了

q w3m を終了 (オプションの設定によって,終了するかどうか確認)

 

B4

sed s"/ /\n/g" realtime.1 | sed "s/,/\n/g" | grep query | awk -F":" '{print $2}' | grep -v "{" | sort | uniq

(1)sed: ファイルの「,」 を改行「\n」 に置換

(2)grep: query という文字列のある行を取り出す

(3) awk:「:」 で区切ったときの2列目(:の後を抽出)

(4)grep -v  ”{“の列除去  (5)重複削除 sort | uniq

 

w3m -dump yahoo.co.jp

・リアルタイムの画面

w3m -dump https://search.yahoo.co.jp/realtime

・リアルタイムの画面から必要なところだけ抽出、トレンドから80行したを表示

w3m -dump https://search.yahoo.co.jp/realtime | grep -A 80 トレンド 

Linuxで利用できるGrepでは、検索でヒットした行の前後の行を出力させることもできる。

前の行を出力する場合はBオプション(grep -B)を、後の行を出力させる場合にはAオプション(grep -A)を付与する。

w3m -dump https://search.yahoo.co.jp/realtime | grep -A 80 トレンド | sed "s///g"

・ w3m -dump https://search.yahoo.co.jp/realtime | grep -A 80 トレンド | sed "s/[1-9].*//g"

sed 正規表現

  • []: []の中に含まれる,いずれかの一文字
  • . : 任意の1文字にマッチ
  • * : 直前の文字が0回以上の繰り返しを表現(ex.ca*r→cr,car,caar,caaaar,...などを表現)

 

B5

sudo apt-get install nano?