引数を指定しないtrap
と、すべてのトラップに対して現在設定されているコマンドが出力されます。ただし、サブシェルはトラップを継承しないため、トラップを保存および復元する標準的な例は bash で失敗します。
save_traps=$(トラップ) ... eval "$save_traps"
割り当ての RHS のトラップはサブシェルで実行されるため、save_traps は常に空の文字列です。の出力を一時ファイルに書き込む以外trap
に、トラップに設定されている現在のコマンドをスクリプトで見つけるにはどうすればよいでしょうか?