是否可以在 nautilus 的上下文菜单中添加一个选项来在现有的 VLC 实例中打开媒体?

是否可以在 nautilus 的上下文菜单中添加一个选项来在现有的 VLC 实例中打开媒体?

我取消选中了 VLC 的选项 - “仅允许一个实例”,因为它有助于同时播放。但有时希望在已运行的文件中打开一个新文件。是否可以在 nautilus 中附加一个脚本(我不知道如何操作)来在已运行的 vlc 中打开文件,而不是更改 vlc 首选项或拖放方法?

编辑: 你们可能已经知道这一点,但我刚刚发现我们可以将 bash 脚本放在“/home/.gnome2/nautilus-scripts”文件夹中或不放在文件夹中(以对它们进行分组)。因此,只需找出 vlc 的运行 pid 并强制在其中打开文件即可。我不懂 bash 脚本,但如果你懂的话,请在这里帮助我。

答案1

您对这个问题的新修改很有针对性。但我将重新表述一下。

子菜单脚本仅当您在脚本目录中至少有一个脚本时,才会在 Nautilus 中右键单击文件或目录时出现。此脚本目录应位于(如果您没有,则应创建它):

  • ~/.local/share/nautilus/scripts- 适用于 Nautilus >= 3.6 版本
  • ~/.gnome2/nautilus-scripts- 适用于 Nautilus < 3.6 版本

您可以使用nautilus --version命令从终端检查您的 nautilus 版本。

笔记:将脚本放入脚本目录后,其名称不一定立即出现在脚本菜单中。您可能必须使用 Nautilus 访问脚本目录 - 可以使用脚本菜单中的最后一个选项来完成。访问目录后,Nautilus 就会知道您拥有哪些脚本,然后您就可以使用它们了。

来源:https://help.ubuntu.com/community/NautilusScriptsHowto

话虽这么说,下面的脚本应该可以实现你对 VLC 的请求:

#!/bin/bash

pid=$(pidof vlc)

## !!! if you want that only the last opened instance of vlc to be replaced 
## in case you have many instances opened, uncomment next line (delete the hash mark from the front)
#pid=$(echo $pid | cut -d ' ' -f1)

if [ "$pid" != " " ]; then
    kill $pid
fi

vlc "$@"

相关内容