コマンドの詳細モードで-vを使用すると速度が遅くなるのはなぜですか?

コマンドの詳細モードで-vを使用すると速度が遅くなるのはなぜですか?

スクリプトの実行にかかる時間を測定したところ、特定のmvコマンドで-vを使用すると、速度がはるかに遅くなることがわかりました(すべての出力がファイルにリダイレクトされます)。

もしそうなら、-v(詳細モード)コマンドの実行速度が遅くなる理由は次のとおりです。

mv file.txt newname.txtmv -v file.txt newname.txt何百万ものファイルをより迅速に処理したいですか?

ベストアンサー1

プログラムが実行されるたびにファイルに印刷するときは、IPCを使用してカーネルと通信する必要があります。リダイレクトが必要であり、ファイルシステムは実際にバッファリングされた変更を作成する必要があります。これにより、プログラムのランタイムスケジュールが中断され、バッファリングのために比較的長い時間を待つ必要があり、実行中のすべてのタスクを実行する必要があり、ほとんどはIOロックではない可能性があります。もちろん、これは非常に一般的な現象であり、他のコマンドでは非常に異なる方法で適用されます。しかし、とにかくIOロック状態になるコマンドは、verboseフラグを使用して実行されたときにそれほど変わらないでしょう。

おすすめ記事