web-dev-qa-db-ja.com

イルカファイルマネージャーをリアルタイムで更新する方法

イルカを開いており、ターミナルまたはWindowsで作業している場合、ファイルが移動または追加される可能性があります。リアルタイムのディレクトリのステータスを確実に更新するにはどうすればよいですか?

現在、更新するために戻ることさえできず、常にイルカを再開する必要があります。

5
user140393

イルカを更新する方法は 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

このスクリプトは起動時に実行されます。

これで、継続的に更新されるイルカがいるはずです!

このスクリプトにはいくつかの注意事項があります。

  • Dolphinを開いたら、別のアプリケーションに移動します。 F5 何かをトリガーします(たとえば、Chromiumはページを更新します)が、スクリプトは引き続き実行され、常に迷惑になります。 解決策: Dolphinを積極的に使用しない場合は閉じます。
  • cronジョブが使用されるため、コンピューターがクラッシュした場合、スクリプトは起動時に実行されません。ただし、これはスクリプトではなくcronの問題です。

スクリプトの意味、行ごと:

  • #!/bin/bash-bashで実行するシバン
  • while true; do-継続的に実行
  • PID=$(pgrep "dolphin")-dolphinインスタンスのプロセスIDを見つけます。これは、実行中のDolphinのインスタンスがあるかどうかを確認するためだけにあります。
  • if [ "$?" -ne "0" ]; then-実行中のDolphinインスタンスがあるかどうかの結果を確認します。ある場合、...
  • xdotool key 'F5'-を押します F5
  • fi-ifブロックの終了
  • sleep 5-5秒待ってからプロセスを繰り返します
  • done-whileブロックを終了します
4
fosslinux

これは bug Kubuntu 18.04でまだアクティブであるようです。Dolphinは常に自動的に更新されず、別のプログラムによって行われた変更を即座に表示しません。その場合、手動で更新する必要があります。 F5は現在、この目的のためにうまく機能しているようです。

3
user47206

OPの最初の質問はほぼ5歳です。 2009年に投稿されたマスターバグ があり、15の重複するバグがポイントされています。バグ修正は、OPの質問が投稿された後、Debian(コメント#58)に登場しました。

このバグが2018年に 新しいバグレポート によってまだ発生しているというレポートは、レポートを提出したユーザー(Jeremy9856)がさまざまな解決策を試みて多数のコメントを投稿しているため、少し誤解を招きます。

  • 許可されたカーネルinotifyウォッチの数を更新しました
  • ドライブをスリープ状態にするtlpを無効にする
  • mkdir/rmdirを数回繰り返して問題を引き起こします
  • 別のユーザー(コメント#10)がワンライナーをテストし、問題が存在しないと述べている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の間のシンボリックリンクが原因でした。

1

次のスクリプトは、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
1
user829010

これはDolphinの問題だと思います。使用していませんが、KDE ​​VMで作成したbashスクリプトをテストしており、Dolphinはホームフォルダー内ではリアルタイムの更新を行いますが、/ dev上では実行しないことを発見しました/ shm。ここであなたの質問を見つけて、賛成しました。これはまだ答える必要があるからです。

スクリプトで使用したのは、xdotool key 'F5'です。

これは私のスクリプトで機能しましたが、正確にリアルタイムではありません。私のスクリプトは大量のファイルを生成し、その発生を確認することはできませんが、完了するとすぐに「F5」を「押し」、ファイルが表示されます。

1
Colin Keenan

xdotoolは、マウス入力イベントまたはウィンドウがフォーカスを取得するたびに、F5キーをイルカに送信できます。

これらのコマンドは無制限に実行されるため、起動時に実行するように設定できます。

クラスdolphinでウィンドウを見つけ、マウスポインターがウィンドウに入るたびにF5を送信します。

xdotool search --onlyvisible --class dolphin  behave %@ mouse-enter key F5

クラスイルカを持つウィンドウを見つけ、イルカがフォーカスを取得するたびにF5を送信します。

xdotool search --onlyvisible --class dolphin  behave %@ focus key F5
0
user829010