問題タブ [file-monitoring]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - NSInputstream & EventEndOfStream
これは私の問題です。プログラムは、ログ ファイルを特定のフォルダーに書き込みます。ログ ファイルが作成されると、約 5MB に達するまで約 2 秒ごとに書き込まれます。その後、新しいファイルが作成されます。ログファイルを解析してリアルタイムでデータを収集しています。
ディレクトリへの変更をリッスンするためにディレクトリ モニタを使用しています。変更が検出されると、NSfilemodocation の日付を比較して、監視する最新のファイル名を取得できます。
次に、そのファイル名を使用して NSinput ストリームを作成します。バッファを作成し、ストリームを開いて「hasBytesAvail」かどうかを確認し、解析を開始します。
私の問題は次のとおりです。ファイルの最後に到達し、EventEndOfStream が呼び出されてストリームが破壊されます。
2 つのオプションがあります。
新しいファイルが作成されるまで、バイト読み取り変数を最新の状態に保ちます。つまり、2 秒ごとにストリームを何度も再作成する必要があり、無駄に思えます。
現在のファイルがディレクトリ内の最新のファイルである限り、ストリームが閉じられないようにします。これは簡単に聞こえますが、それを行うには、ストリームを閉じて割り当てを解除するトリガーとなるファイルの最後まで読み取る必要があります。
簡単に言えば、フォルダーを監視して、監視するファイルの名前を取得したいと考えています。次に、ファイルを監視し、最後に読み取られてからの新しいバイトのみを読み取ります。NSInputstream の不要なインスタンスなし。
誰か提案はありますか?
dll - どのプロセスがファイルの名前を変更したかを通知するには、どの関数をフックする必要がありますか?
ファイル拡張子が変更されたときはいつでも、どのプロセスがそれらを変更したかを通知できる Windows フックを作成したいと考えています。
私が使用することを計画していたアプローチは、トランポリンhttps://en.wikipedia.org/wiki/Trampoline_(computing)です。
インジェクトされた DLL からメイン プログラムに返される 2 つの情報が必要です。
1. 拡張子が変更されたファイルのパス 2. 変更されたプロセス
つまり、C:/whatever/MyFile.txt は C:/whatever/MyFile.doc になり、PID 7344 になり、SomeProgram.exe が変更されました。
必要なすべての情報を取得するために、挿入された DLL に再ルーティングする必要がある関数はどれですか。
macos - MacOSX で開かれているファイルが多すぎる場合の監視と警告
システムで開いているファイルを監視し、開いているファイルが多すぎる場合に警告できる MacOSX (できれば El Capitan) 用のツールはありますか?
警告するだけでなく、開いているファイルのリストをどこかにダンプします (この状況で可能であれば、テキスト ファイル)。
私は、開いているファイルが多すぎる可能性があるアプリケーションの開発に参加しているため、質問があります。
windows - フォルダに出入りするファイルの監視(ファイル キュー)
ファイルキューと想定されるフォルダーがあり、毎秒多くのファイルがファイルキューに出入りします。2 つのログ ファイルを保持するスクリプトを作成したいと考えています。1 つはファイルの名前とファイルがファイル キューに入った時刻をログに記録し、もう 1 つはファイルの名前とファイルがキューを離れる時刻をログに記録します。助けていただけますか?
csv - Lua スクリプトによるファイル監視
こんばんは、
私は現在、機械で作成されたデータを csv シートからデータベースにインポートする方法を開発しています。私が持っている質問は、Lua を使用して csv ファイルの変更に対応する方法があるかどうかです。
ファイルは次の形式の行を取得します。
17162H,"801234500001",9/23/2016 12:33:30 PM,"INV"
スキャナーがスキャン プロセスを終了するたびに、古い行の下に追加されますが、スクリプトをトリガーするためのデータベースへの直接接続はありません。
変更が異なるファイル サイズ、フォルダー サイズ (ファイルを含むフォルダーのサイズ)、またはファイル情報内の変更 (最後に開いた日付など) によって検出された場合は関係ありませんが、開いて読み取ることができません。恒久的なパフォーマンス上の理由。
また、ここで質問するのはこれが初めてなので、私の不格好な方法で申し訳ありませんが、時間の経過とともに自分自身を改善しようとします.