短編小説: クライアントから (CMD バッチを使用して) サーバー上のファイルの書き込み状態を取得する方法が必要です (BASH を使用)。
久々の潜伏者、初ポスター。探しているもののバリエーションについて多くの検索を行いましたが、まだ十分なデータが見つかりません。
CMDでバッチファイルを作成しています(クライアントは、不明なパッケージがインストールされた任意のWinOS [XP-up]である可能性があるため)。バッチは、puTTY の「plink」を使用して、SSH 経由でサーバーに接続します。サーバーに接続すると、plink はコマンドを実行して新しいファイルにデータを書き込みます。そのファイルが書き込まれたら、PSCP を使用してファイルをクライアントにコピーします 。私はこれらすべてを成功裏に達成しました。
そのファイルの作成は瞬時に行われますが、すべてのデータを書き込むのにかかる時間は不明/可変です。したがって、ファイルがいつ完成したかを判断してコピーするための自動化された方法が必要です。私の状況では、単純に XX 秒間タイムアウト/スリープを使用することはできません。
私がこれまでに取ったアプローチ (まだ成功していない) は、「stat -c '%s' filemane」を使用してファイルサイズを繰り返し取得し、完全なファイルを示す、grab1 EQUgrab2 までループで実行することです。stat の出力を CMD バッチに入れて処理できないため、これが難しいと感じています。
Q1: これ (stat 結果が CMD for ループに入る) は最善のアプローチですか? たぶん、BASHに何かが存在しますか?
Q2: Q1 が true の場合、統計結果を変数として CMD バッチに取得してデータを解析/分析する方法についてのアイデアはありますか?
提案とあなたの時間を前もってありがとう. DCT