Homebrew福岡市内に繰り出すと大勢の人で賑わっていた。これが世に言うクリスマスといふイベントらしい。今日はシェル芸勉強会。福岡サテライト会場に、私も含め合計7人の有志が集った。午前の部は超絶ワンライナーで有名な鳥海さんが担当。今回はシェルのインタラクティブな機能についての話だった。だいたい知ってはいたが再確認になった。参加者の方には、私の方からも改めて説明した。シェル芸勉強会ではシェルそのものの話題は少ないので、新鮮な感じだった。-Pでシェルの操作に割り当てらているキーバインドの確認Ctrl-dでデータ終了という点で補足の説明をした。シェルもOSから見たらプログラムの一つに過ぎず、標準入力から入力されるのを待っている状態である。設定次第ではCtrl-dを入力するとログアウトしてシェルが終了してしまう。bashにはignoreeofという設定があり、これが有効な場合はEOFつまりCtrl-dを入力してもログアウトしない。設定は下記のようにsetコマンドで行う。-oで設定有効、+oで設定無効になるというのが、直感と反対で初心者殺しである。offまたTwitterのクライアントアプリやWeb画面では、viのキーバインドが密かに使える話もした。jkでTLを上下に移動できたりするのである。鳥海さんの話が終わった後、みんなで自己紹介を行なった。WIndowsでの参戦だった。その後下記イントロの話をした。液晶ディスプレイの件をまだ引きずっている・・・speakerdeck.comそれからシェル芸の歴史についても簡単に紹介をした。参加者みんなで近くの一風堂にラーメンでも〜と出かけたら、トンデモナイ行列。みんなクリスマスにそんなにラーメン食ってどうするん??長時間待ちたくなかったので別のラーメン店に。以前食べたことがあるお店だったが久々に美味しかった。午後の部さあいよいよ本番開始。Officeなファイルを扱う内容だったが、正直東京のペースに合わせながらやるのは無理があったため、途中から福岡独自のマイペースで進めることにした。問題と解答は下記を参照して欲しい。Officeのファイルは、実はXMLや画像ファイルをZIPで固めたものである。この事実に参加者の皆さん一同驚きを隠せない様子だった。今回はこのことがわかっただけでも収穫だったようである。後はunzipコマンドの使い方を一通り解説しておいた。後treeコマンドでディレクトリの中を見るとか。Q2スライドの中から「危険」の文字列を探し出して数を数える。ZIPを解凍したディレクトリ内をgrepすることをやってもらった。-pでファイルを標準出力する方法を解説して同様にgrepしてもらった。解説っぽいことを話したのだがよく覚えていない。Q3画像ファイルだけを取り出すって???最初は下記のように画像ファイルを1つずつ標準出力に取り出すようなことをやるのか??とか考えていたが、こんなことしなくてもいいのだった。images/ppt/media/image6.gif詳しくは上田会長の解答を見てもらえばいいが、unzipの-dオプションを使う下記の例も参考になった。展開する先のディレクトリを指定出来るようだ。2016年12月25日Q4Q4以降は東京のペースで進めるのは困難だったため、福岡サテライトのペースで進めることにした。データをじっくり確認し、不完全ではあるがとりあえずの解答を出した。完全には解けなくても勘所を押さえるようにした。's;<[^<>]*>;;g'のところで、正規表現の最長一致についても説明しておいた。タグだけ消すつもりが行全体が消えてしまう。's;<[^<>]*>;;g'12Q5Q4同様な感じで。データをまずはじっくり確認し、完全には解けなくても勘所を押さえる感じで。0.510-510.550.12511116Q6以降Q6以降追いつくのは難しかったため、データの確認をする程度にとどめた。終了後1時間ほど解説とかをすることにした。データをじっくり見るためにlessの使い方を再確認した。papiro.hatenablog.jp次に少し簡単め?な問題として、閏年を列挙するやり方を解説した。Gistにメモ的に書いているので載せておく。gist.github.com終わりにYoutubeのライブを見ながら東京のペースにぴったりと合わせていくのは、難易度が高いとなかなかキビシイ。以前は必死に追いかけていたが、最近は福岡のペースでやってもええかなと思ってやっている。問題を完全に解くのが目的ではなく、参加者それぞれのペースで何かしら得るものがあればいいのだきっと。追いつけなかったぶんについては、勉強会終了後に解答を見て取り組めばいいんだきっと。後は参加者の方がちょっと発表したりする機運をそろそろ出していきたいなあと思ったり。そのためにはペース配分とかをどうするか?毎回試行錯誤の連続である。起きるとそこは雪国だった。はてなブログPro情報処理ってもっとシンプルにならないだろうか?PKI関連、RubyやPHP等のLL、シェルスクリプト、シェル芸、ユニケージ見習い未満。シェルスクリプトとシェル芸はきっと違うんですよ。JPはてなブログをはじめよう!papiroさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。