問題タブ [inotifywait]

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.

0 投票する
1 に答える
1454 参照

raspberry-pi - /sys/class/gpio/gpioXX/ (ラズベリーパイ) で inotifywait が検出されない

GPIOを使用して2つのラズベリーパイを接続しました:最初のものはマスターで、GPIO2(およびGND ...)を使用します 2番目のものはスレーブで、GPIO0とGPIO1を使用します

GPIO1 と GPIO0 を方向 " IN " に配置し、GPI02 を方向 " out " に配置します: echo in > /sys/class/gpio/gpioXX/direction

マスター (GPIO2、方向 = OUT ) で、ピン GPIO2 を 1 にすると、スレーブの 2 つのピンも 1 になります。だから、ここでは問題ありません

1 つのフォルダー (たとえば、 /sys/class/gpio/gpio18/ (GPIO1 の場合は 18)) で inotifywait を使用して、シェル スクリプトを追加します。

SLAVE を使用していて、/sys/class/gpio/gpio18/ の値を echo 1 > .../value で変更しようとすると、inotifywait が変更をキャッチしましたが、値は変更されませんでした ( - bash: echo: 書き込みエラー: 操作は許可されていません。方向が "IN" になっているため正常です)。

MASTER で gpio27 の値 (GPI02 に対応) を変更すると、両方の値ファイル (GPIO0、GPIO1、および GPIO2) が変更されますが、inotifywait は gpio/gpio18/value の変更をキャッチしませんでした (ファイルの内容が 0 から 1 またはその逆に変更されます)

0 投票する
1 に答える
40 参照

shell - 通知されたファイルへの安全なアクセス

シェルスクリプトで特定のファイルが現れるのを待ちたい

コードを処理している間は、ファイルが有効であると想定していました。悲しいことに、ファイルはsha1sum. ファイルを長持ちさせるために必要な明らかな何かを見逃していませんか?

0 投票する
2 に答える
1952 参照

shell - inotifywait を終了する方法

特定の条件が発生するまで、特定のディレクトリを監視したい。

breakこれで、またはのどちらを使用してもexit 0、while ループは続行されます。では、ループを終了して出力を変数に渡す最良の方法は何ですか?

編集

で置き換えるbreakkill -2 $$、続行がトリガーされるだけのようです。さらに悪いことに、ブレークが正常に機能する場合もありますが、めったにありません。

0 投票する
2 に答える
10809 参照

linux - スクリプトで inotify を使用してディレクトリを監視する

特定のディレクトリ「/root/secondfolder/」を監視するbashスクリプトを作成しました。スクリプトは次のとおりです。

「/root/secondfolder/」に「fourth.txt」というファイルを作成し、それに書き込み、保存して閉じると、次のように出力されますが、「close_write」はエコーしません。

誰かが私を正しい方向に向けることができますか?

0 投票する
1 に答える
178 参照

linux - bash read: タイムアウトによる読み取り結果のグループ化

短い話: 私の Linux デスクトップでは、ノード/devが作成または削除されるたびに通知が必要です (デバイスを接続したときにどのノードが作成されるかを知ることは非常に便利です)。そのための単純なスクリプトを 2 つ書きました。

最初のものは、次の方法でこれらの変更をログ ファイルに書き込みますinotifywait

結果のログ ファイルは次のようになります。

そして、そのログ ファイルを (bashreadコマンドで) 監視し、通知を表示する 2 番目のスクリプト:

機能しますが、予想どおり、作成/削除されたノードごとに専用の通知バルーンがあります。通常、単一の USB デバイスを接続すると複数のノードが存在しますが、非常に多くのノードが存在する場合もあります。そのため、新しいエントリが検出されたら、しばらく (たとえば 200 ~ 300 ミリ秒) 待機してエントリを追加し、最後にエントリを受信して​​からタイムアウトした後にのみ、収集されたエントリをnotify-send.

私は経験豊富な bash プログラマー (および Linux ユーザー) ではないので、誰かがこれを正しく実装する方法について手がかりを教えてくれたらうれしいです。

0 投票する
1 に答える
716 参照

amazon-web-services - マウントされた S3 バケットで inotifywait を使用できますか?

AWS でワークフローをセットアップしようとしています。

ここに画像の説明を入力

S3 バケットには、次のフォルダーが含まれています。

別のタスクは、処理のために「todo」フォルダーにファイルをダンプします。

Ubuntu EC2 インスタンスには、s3fs-fuse を介してマウントされたバケットがありinotifywait、新しいファイルの「todo」フォルダーを監視するために使用されています。

touch /mybucket/todoEC2 インスタンス内から実行すると、inotifywaitジョブがトリガーされます。ただし、ファイルが別のソースから S3 フォルダーにアップロードされた場合、ジョブはトリガーされません。

これは賢明な設計のように見えますか?もしそうなら、私がどこで間違ったのか分かりますか?または、単に使用する必要がありますcronか?

0 投票する
1 に答える
566 参照

bash - inotifywait 複数のファイルをまとめて追加する

このシェルスクリプトは、フォルダーに入れられたすべてのものを送信に追加する必要があります。1 つのフォルダーでは正常に動作しますが、同時に複数のフォルダーを追加すると、2 番目のフォルダーは無視されます。

0 投票する
1 に答える
195 参照

bash - 別のスクリプトをトリガーするための Ubuntu BASH inotifywait

特定のタグ (*SDS.csv) を持つファイルのディレクトリを監視するために、bash スクリプト内で inotifywait を使用しようとしています。

また、一度だけ実行したい(ファイルがディレクトリ data に書き込まれるときに一度)。

例:

0 投票する
1 に答える
110 参照

linux - Bash Monitoring ディレクトリと新しい場所へのファイルの移動

ディレクトリに書き込まれた新しいcsvファイルのディレクトリを監視しようとしています。
作成時の新しい csv ファイルには、データが追加されます。ファイルが書き込まれ、閉じられたら。ファイルを新しいディレクトリに移動する必要があります。

次のスクリプトを作成しましたが、実行するとファイルではなくディレクトリ全体が移動します。助けてください