2

ループを実行する Windows で powershell から実行している bash スクリプトがありforます。ときどき、キーボードの Enter キーを押すまで、ループの繰り返しの 1 つがハングします。
これは常に発生するわけではなく、実際にはほとんど発生しませんが、それでも発生します。

興味深いのは、私のループ内部は基本的にtime _command_、Enter キーを押すと、コマンドの実行にかかった時間を教えてくれることです。コマンドは実際には、ループの反復よりもはるかに短い時間で実行されます。これは、何らかの奇妙な理由でキーボード入力を待機しているためです。

スクリプトを一晩実行したままにし、翌朝戻ってきて、あまり進んでいないことを確認するのはかなり面倒です。

なぜこれが起こるのか、それを回避するために何をすべきか誰かが知っていますか?

ありがとう、ジブ

4

3 に答える 3

5

同じ問題に何度か遭遇しました。今私は理由を見つけたと思います!

PowerShell 内でマウスを押すと、動かなくなり、ユーザーが「Enter」を押して続行する必要がある場合があります。したがって、回避策は、既に何らかのプログラムを実行しているときに、シェルウィンドウ内で誤ってマウスを押さないようにすることです...

于 2011-10-08T22:58:36.807 に答える
0

スクリプトを投稿するまで、私たちができることはほとんどありません。

ただし、一般に、コマンドの 1 つが別のコマンドの stdin への入力として、時々 null を返す可能性があります。null を見ると、端末には stdin として見えます。または、それらの線に沿った何か。

于 2010-01-28T22:59:35.880 に答える
0

PowerShell のプロパティに移動し、'Quick Edit'/'Insert'チェック ボックスをオフにします。これらが選択されている場合、コンソールは出力を一時停止し、Enter キーが押された場合にのみ再開します (これは、コンソールのタイトル バーを監視することで識別できます"Administrator:Windows PowerShell""Select Administrator:Windows Powershell"

于 2015-10-21T13:39:13.050 に答える