問題
企業のHPの中にはソースコードに面白いコメントを記述しているところがあるので、それをコマンドライン上で抽出して表示してみたい。
ルール
-
curl
,grep
のみ使用 -
-A
,-B
など行数指定や行番号ではなくパターンで抽出 - 出来るだけ短く
対象
下に自分の解答とスクリーンショットを列挙しています。
自分で腕試ししたい方はここで止めてやってみてください。
自分の解答
実行環境
- macOS 12.0.1
- iTerm2 3.4.14
- zsh 5.8
- curl 7.77.0
- grep (GNU grep) 3.7
- 2021/12/08時点アクセス
Abema
curl -sL abema.tv | grep -o ';;.*;'
ロリポップ!レンタルサーバー
curl -sL lolipop.jp | grep -ozE '\s+_.*_/.'
日本・コカコーラ
curl -sL cocacola.co.jp | grep -ozE ' +__.*eux....'
富士そば
curl -s fujisoba.co.jp | grep -ozE '. ,.* ̄..'
食べログ
curl -sL tabelog.com | grep -ozE '\s+z.*t/\s'
任天堂ニュース
curl -sL nintendo.co.jp/nintendo_news | grep -ozE '<!---.*--->.'
日本アマゾン
curl -sL amazon.co.jp -A '' | grep -ozE '<!--\s+_.*~-->.'
ドットインストール
curl -sL dotinstall.com | grep -ozE '\s\[エ.*い。..'
更新毎にコメント内メッセージが変化する。以下は1秒ごとに画面を更新して取得したコメントを表示するやつ。
while :; do
echo '\033[2J\033[3J\033[H'
curl -sL dotinstall.com | grep -ozE '\s\[エ.*い。..'
sleep 1s
done
GIF↓
まとめ
いかがでしたか?笑 grep -ozE
、便利です。