時々、誤って/本能的に、tabおそらく入れるべきではないディレクトリを 2 度入力してしまうことがあります。今回の場合、私がこれを書いている理由は、それが古くて非常にいっぱいになっている CIF ドライブ上にあるからです。
もちろん、これにより、制御端末はディレクトリ リストを待機してハングアップし、Ctrl間違っCたプロセスに割り込みを送信しているため何も実行されません (リストはサブシェルで生成されたものと思われます)。
このリストを削除する方法はありますか? これはプロセス リストに表示されるものですか、それともリストが表示されるまで待つ必要がありますか (タイムアウトはないようです)。
これは Ubuntu 16.04 上の Bash です。
「無効にする方法」の重複ではありません。機能を無効にしたいのではなく、非常に長い時間がかかるディレクトリ リストで誤って実行された場合に、それを停止する方法を知りたいのです。
答え1
Ctrl+ はC間違ったプロセスに割り込みを送信しているため何もしません (リストはサブシェルで生成されたものと思われます)。
正しいプロセスに割り込みを送信していますが、プロセスは中断されない睡眠。
割り込み不可のスリープ状態は、シグナルをすぐには処理しないスリープ状態です。待機中のリソースが使用可能になった場合、またはその待機中にタイムアウトが発生した場合にのみ起動します (スリープ時に指定されている場合)。これは主に、ディスクまたはネットワーク IO (入力/出力) を待機しているデバイス ドライバーによって使用されます。プロセスが割り込み不可のスリープ状態にある場合、スリープ中に蓄積されたシグナルは、プロセスがシステム コールまたはトラップから戻ったときに認識されます。
Unix 系システムでは、このコマンドはプロセスの中断不可能なスリープ状態のための
ps -l
コードを使用しますD
。このようなプロセスは、を使用しても強制終了できずSIGKILL
、それらを取り除く唯一の単純な方法はシステムを再起動することです。
それで
このリストを削除する方法はありますか?
リブート。
それはプロセスリストに表示されるものですか?
はい。プロセスはD
状態にあります。
リストが届くまで待つしかないのでしょうか?
はい。または再起動してください。
関連している:kill -9
動作しない場合はどうすればいいですか?