是否有命令可以获取 nautilus 中选择的文件的位置?

是否有命令可以获取 nautilus 中选择的文件的位置?

我希望能够选择一个文件,输入一个命令并让它返回在终端中选择的文件的当前位置。

答案1

如果您想将文件名放入终端程序,您应该能够使用鼠标拖放或Ctrl-cCtrl-(Shift- )v将其复制/粘贴到编辑器/终端中。

答案2

我认为最适合这里的是 nautilus 插件。

  1. 安装 python-nautilus

    sudo apt-get install python-nautilus
    
  2. 创建插件“TestExtension.py”

    sudo nano /usr/share/nautilus-python/extensions/TestExtension.py
    

    每当选择发生变化时,此扩展就会调用您的脚本,并将选择逐一传递作为第二个命令参数$1

    from gi.repository import Nautilus, GObject
    import os
    
    class ColumnExtension(GObject.GObject, Nautilus.MenuProvider):
        def __init__(self):
            pass
    
        def menu_activate_cb(self, menu, file):
            print "menu_activate_cb",file
    
        def get_file_items(self, window, files):
    
            for file in files:
                uri = file.get_uri()
                if uri.startswith("file:///"):
                    os.system("yourscript_path"+" \""+uri[7:]+"\"")
    
            return
    

    或者您可以创建一个列表,将它们组合成单个字符串,然后export将其作为env变量。这样,所有其他脚本都可以访问当前选择。(安全漏洞)

  3. 杀死鹦鹉螺

    pkill nautilus
    

参考:

相关内容