jus共催 第48回引きこもりシェル芸勉強会

bashの文法とか機能の話めっちゃ好き
kanataほぼ4年前に追加

jus共催 第48回シェル芸勉強会リンク集 | 上田ブログ

Mon Jun 29 21:19:34 JST 2020 (modified: Wed Jul 1 09:00:25 JST 2020) 2020年6月27日土曜日、 日本UNIXユーザ会 さんとシェル芸勉強会を共催いたしました。今回もコロナウイルス禍のため、拙宅からYouTubeでオンライン開催しました。皆様、オンラインでのリアクション、二次会での暴言へのリアクション、誠にありがとうございました。 色塗りました.増分はまた今夜にでも足しますー #シェル芸 jus共催 第48回引きこもりシェル芸勉強会 - Togetter https://t.co/YiPUc4HPYu @togetter_jp より- 上田 隆一 (@ryuichiueda) June 28 2020 LTやります。配信できたらツイートいただけると幸いです? https://t.co/UBB0Q4WjlJ #シェル芸 - taka@SIではたらくフレンズ (@amanoese) June 27 2020 では、次のLTいきますー。こちらのURLになります。 https://t.co/V1iwCeD7uj 音声と映像大丈夫そうでしたらお伝え下さいー。#シェル芸 - ぐれさん😉 (@grethlen)

jus共催 第48回引きこもりシェル芸勉強会

主にプロセスについて勉強しました。激しかったです。

とても楽しい

知見

ここらへんの知見については自分で本を書いておきながら忘れてたりする

catの代替

ビルトインなので、たとえ/usr/bin/catが吹き飛んだとしてもこれでなんとかできる

$ echo hoge > hoge
$ cat hoge
hoge
$ echo $(<hoge)
hoge

サブシェルとexec

サブシェル

子のbashをforkして、その先で実行する
実行終了まで待ち合わせる
変数とかカレントディレクトリとか引き継がない

$ pwd
/tmp
$ (mkdir -p test;cd test;touch hoge)
$ pwd
/tmp

&でバックグラウンド実行するのと似ているけど、こっちは子プロセスを作らないので変数とかカレントディレクトリとかは、そのまま

exec

自分自身のbashが、実行したコマンドのプロセスに置き換わると思えばいい
以下だとbashがsleepに置き換わるが、sleep自体は3秒立ったら終了するため、3秒後にターミナルごと落ちる

$ exec sleep 3

execはリダイレクト先を切り替える機能もある

$ exec > hoge     # 標準出力をファイルに切り替える
$ exec > /dev/tty # シェルの標準出力先を画面に戻す

今回のシェル芸勉強会の問題を解くには、標準入力を切り替える必要があった

LT

この2つのLTはとても面白かったので、是非見て

Technopop shell-gei

soxというコマンドを使うとシェル芸で音が鳴らせるよ!という内容
すばらしい…

ワイも音シェル芸を以前やろうとしててtxt2wavの作者の方に許可を頂いて、周波数をインプットに音楽を作り出そうとしたんだけれど挫折した経緯が…

周波数を扱うレイヤから、楽曲まで昇華させるの実はすんごい難しかったです

takaさんは周波数をbcで見事に計算して、そして音楽を奏でていた
素晴らしかった(こなみ)

シェル芸人に必要なのは「マスキングテープ」だったのでは

なんかもぅ…すごすぎて説明できない(語彙力)
Youtubeみて頂けたらと

ほんとこれはパラダイムシフトの瞬間を目の当たりにしたような衝撃を…覚えました

今まで、「あ、これはう~ん、しょうがないpython(とか)で書くか…」という事が多々あったんですよね
主に処理時間的な意味で

teipがあれば、全部シェル芸でできる…!最高か

使っていきます


コメント

クリップボードから画像を追加 (サイズの上限: 100 MB)