シェルワンライナー160本ノック問題153
問題153 telnet コマンドでHTTP通信
簡単という割にはさっぱりダメだった。今日は頭が全然働かない日なのかもしれない。解説を読んだらますますわからなくなった。
解答例は
( printf 'HEAD / HTTP/1.1\nHost: www.google.co.jp\n\n'; sleep 1; ) | telnet www.google.co.jp 80
( printf 'HEAD / HTTP/1.1\nHost: www.google.co.jp\n\n'; sleep 1; ) | openssl s_client -connect www.google.co.jp:443 -quiet -no_ign_eof
となる。sleepを挟めばうまくいくというのがよくわからない。telnetがレスポンスを表示する前に終了してしまうためと言っているが、終了するの主語について確証を持てない。telnetが終了するというならなぜtelnetの前にsleepを入れるだけでよくなるのかがよくわからない。