bashのtrapで一時ファイルを片付ける4つの落とし穴

bashのtrapで一時ファイルを片付ける4つの落とし穴

一時ファイルを mktemp と trap で片付けるつもりが、並列で中身が混ざる、cleanup が 2 回走る、変数が空になる、パスがコードとして実行される。4 つの穴と、それぞれをどう直したかを解説する。
テストの後片付けが手元の環境を壊す4つの穴

テストの後片付けが手元の環境を壊す4つの穴

テストを流したら、普段の tmux が落ちて端末の窓が全部閉じた。/tmp のファイルが消えた。止めたはずのプロセスが残った。後片付けのコードが手元を壊す・ゴミを残す 4 つの穴と、途中で止めて確かめる方法を解説する。
Gitの既定ブランチと派生元をスクリプトで判定する落とし穴

Gitの既定ブランチと派生元をスクリプトで判定する落とし穴

自作のブランチ一覧が触っていないブランチを「4コミット先」と出す。原因はfetchで更新されないorigin/HEAD。比較先の選び方、派生元をmerge-baseで推定した判断、config --listをgrepしない理由を解説する。
AIエージェントが叩くとシェルが止まる・壊れる4つの原因

AIエージェントが叩くとシェルが止まる・壊れる4つの原因

端末では動くスクリプトが、Claude CodeなどのAIエージェントから叩くと返ってこない。原因は端末が無いこと、人間向けの設定、pkill -f、zsh。5分止まった実例と、人間向けの設定をopt-inにする方法を解説する。
自動実行のbashが突然落ちる・失敗を見逃す4つの罠

自動実行のbashが突然落ちる・失敗を見逃す4つの罠

cronやCIで回すbashが、ある日exit 141で落ちる。テストの失敗を数えない。evalで意図しないコマンドが走る。二重起動でファイルを壊す。筆者が踏んだ4つの罠と、どう直したかをbash 5.3の実行結果つきで解説する。
bashのset -eが効かない5つの場面と対処法

bashのset -eが効かない5つの場面と対処法

set -eを書いたのに、失敗したコマンドの後もスクリプトが進む。|| で呼んだ関数、コマンド置換、local付き代入、&&で終わる関数など、止まらない場面と直し方をbash 5.3の実行結果つきで解説する。