シェルコマンドの戻りは、出力ファイルが書き込まれたことを保証しますか?

シェルコマンドの戻りは、出力ファイルが書き込まれたことを保証しますか?

私はOSXアプリケーションを構築しています。スクリーンショットスクリーンショットをキャプチャしてディスクに書き込むコマンド:

screencapture -mT0 ~/screenshot.png

バックグラウンドでUNIXコマンドを実行しない場合は、コマンドが実行され、シャットダウンステータスが受信されたらファイルが完全に出力されると期待できますか?

ベストアンサー1

常にバッファがあるため、コマンドが返されたときにファイルがディスクに書き込まれていない可能性があります。この時点で、ファイルはすべてのアプリケーションで表示できますが、システムがクラッシュしたり電源が切れたりすると、再起動後にファイルが存在しないか不完全になる可能性があります。

後で実行してすべてのファイルシステムバッファをフラッシュできますが、sync変更はディスクバッファにのみ存在する可能性があり、まだディスク自体に書き込まれない可能性があります。

おすすめ記事