このコマンドに問題がありますか?
$ trap 'killall $$ ; rm -f $folder2;exit ' 18 20 24
コマンドはfor
ループ内にあり、for
実行中に押すとプロセスを停止CTRLし、独自にZ生成されたすべてのファイル(内部的に)を削除したいと思います。folder2
folder2
ただし、ターミナルで - を押すとCTRL動作が停止しますが、それ以降は他の操作を実行できず、動作しません。ZCTRLC
ベストアンサー1
問題は、現在のプロセスPIDを提供している間、killall
そのPIDではなくプロセス名と一致するパターンが必要であることです。代わりに$$
使用したいですkill
。
また、ディレクトリとその内容の両方を削除するには、次のよう-r
に切り替える必要がありますrm
。
最後に、プロセスを終了した後に実行するすべての操作は適用されません。kill
最後に移動してtrap
完全に削除しますexit
。
trap 'rm -rf "$folder2";kill $$' 18 20 24
for
削除する前にループを停止するには、$folder2
以下を使用できますbreak
。
trap 'break;rm -rf "$folder2";kill $$' 18 20 24