イルカを開いており、ターミナルまたはWindowsで作業している場合、ファイルが移動または追加される可能性があります。リアルタイムのディレクトリのステータスを確実に更新するにはどうすればよいですか?
現在、更新するために戻ることさえできず、常にイルカを再開する必要があります。
イルカを更新する方法は F5。ただし、これは手動です。
自動ソリューションである継続的に更新するには、起動時に実行されるbashスクリプトを作成します。このbashスクリプトは F5 ドルフィンが開いている場合は5秒ごと。 dolphin-update
に/usr/local/bin
という名前のファイルを作成し、次の内容を追加します。
#!/bin/bash
while true; do
PID=$(pgrep "dolphin")
if [ "$?" -ne "0" ]; then
xdotool key 'F5'
fi
sleep 5
done
最初にルートとして作成してから、所有者をユーザーに変更する必要がある場合があります。
Sudo chown username:username /usr/local/bin/dolphin-update
実行許可があることを確認します。
chmod +x /usr/local/bin/dolphin-update
ブート時に実行する必要があります。これを行うには、Sudo crontab -e
を実行し、ファイルの最後に次の行を追加します。
@reboot /usr/local/bin/dolphin-update
このスクリプトは起動時に実行されます。
これで、継続的に更新されるイルカがいるはずです!
このスクリプトにはいくつかの注意事項があります。
cron
ジョブが使用されるため、コンピューターがクラッシュした場合、スクリプトは起動時に実行されません。ただし、これはスクリプトではなくcron
の問題です。スクリプトの意味、行ごと:
#!/bin/bash
-bashで実行するシバンwhile true; do
-継続的に実行PID=$(pgrep "dolphin")
-dolphin
インスタンスのプロセスIDを見つけます。これは、実行中のDolphinのインスタンスがあるかどうかを確認するためだけにあります。if [ "$?" -ne "0" ]; then
-実行中のDolphinインスタンスがあるかどうかの結果を確認します。ある場合、...xdotool key 'F5'
-を押します F5fi
-if
ブロックの終了sleep 5
-5秒待ってからプロセスを繰り返しますdone
-whileブロックを終了しますこれは bug Kubuntu 18.04でまだアクティブであるようです。Dolphinは常に自動的に更新されず、別のプログラムによって行われた変更を即座に表示しません。その場合、手動で更新する必要があります。 F5は現在、この目的のためにうまく機能しているようです。
OPの最初の質問はほぼ5歳です。 2009年に投稿されたマスターバグ があり、15の重複するバグがポイントされています。バグ修正は、OPの質問が投稿された後、Debian(コメント#58)に登場しました。
このバグが2018年に 新しいバグレポート によってまだ発生しているというレポートは、レポートを提出したユーザー(Jeremy9856)がさまざまな解決策を試みて多数のコメントを投稿しているため、少し誤解を招きます。
inotify
ウォッチの数を更新しましたtlp
を無効にするmkdir
/rmdir
を数回繰り返して問題を引き起こしますwhile true ; do mkdir abc ; sleep 1 ; rmdir abc ; sleep 1 ; done
/home/jeremy/Téléchargements/Séries
)Jeremy9586による最後のコメント:
さて、/ media/Dataを指す/ home内のフォルダーのシンボリックリンク(デスクトップ、ダウンロードなど)を削除し、これらのフォルダーの場所を変更するために(アプリケーションで)kde設定を使用しましたが、約1週間の問題!
だから、それはシンボリックリンクに関連することができますか?
OPにあったバグは2009年に最初に報告され、2013年に解決されました。
新しい賞金が指すバグは、一般的にファイルリストの更新とは関係がないようで、押す必要があります F5。このバグは、/home
と/media/home
の間のシンボリックリンクが原因でした。
次のスクリプトは、xdotoolを使用してF5キーを送信し、フォーカスがあるたびにイルカウィンドウをリセットします。保存して実行し、ブート時に実行します。
#!/bin/bash
# indefinite loop
while : ; do
# gets root window property _NET_ACTIVE_WINDOW
WIN=($(xprop -root _NET_ACTIVE_WINDOW))
# extracts window id (base seven)
WIN="${WIN[4]%%","*}"
WIN="$(printf "%s\n" ${WIN})" # bypass weird array bug
# Decimal window id of dolphin
WindowID="$(xdotool search --class "dolphin" 2>/dev/null | tail -1)"
# Convert dolphin's win id to base seven
WindowIDbSeven=$(printf "0x%07x" ${WindowID})
# test if an acive window id mathes with the dolphin's window id
if [[ "${WIN}" == "${WindowIDbSeven}" ]]; then
# sends F5 to dolphin's window id
xdotool key --clearmodifiers "$WindowIDbSeven" F5
fi
# clears array
WIN=()
sleep 5
done
これはDolphinの問題だと思います。使用していませんが、KDE VMで作成したbashスクリプトをテストしており、Dolphinはホームフォルダー内ではリアルタイムの更新を行いますが、/ dev上では実行しないことを発見しました/ shm。ここであなたの質問を見つけて、賛成しました。これはまだ答える必要があるからです。
スクリプトで使用したのは、xdotool key 'F5'
です。
これは私のスクリプトで機能しましたが、正確にリアルタイムではありません。私のスクリプトは大量のファイルを生成し、その発生を確認することはできませんが、完了するとすぐに「F5」を「押し」、ファイルが表示されます。
xdotoolは、マウス入力イベントまたはウィンドウがフォーカスを取得するたびに、F5キーをイルカに送信できます。
これらのコマンドは無制限に実行されるため、起動時に実行するように設定できます。
クラスdolphinでウィンドウを見つけ、マウスポインターがウィンドウに入るたびにF5を送信します。
xdotool search --onlyvisible --class dolphin behave %@ mouse-enter key F5
クラスイルカを持つウィンドウを見つけ、イルカがフォーカスを取得するたびにF5を送信します。
xdotool search --onlyvisible --class dolphin behave %@ focus key F5