Existe um comando para obter a localização de um arquivo que está selecionado no nautilus?

1

Eu quero poder selecionar um arquivo, digitar um comando e fazer com que ele retorne a localização atual do arquivo selecionado em um terminal.

    
por Tim 02.06.2014 / 18:09

2 respostas

0

Se você deseja obter um nome de arquivo em um programa de terminal, você deve ser capaz de usar o mouse arrastar e soltar ou Ctrl - c e Ctrl - ( Deslocamento -) v para copiar / colar em um editor / terminal.

    
por l0b0 02.06.2014 / 18:18
0

Acho que a melhor coisa para se encaixar aqui é um plugin nautilus.

  1. Instale o python-nautilus

    sudo apt-get install python-nautilus
    
  2. Crie um plug-in "TestExtension.py"

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

    Esta extensão irá chamar seu script sempre que a seleção mudar e passar a seleção um por um como segundo argumento de comando $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
    

    Ou você pode criar uma lista, combiná-los como uma única string e, em seguida, export como env variable. Portanto, a seleção atual estará acessível para todos os outros scripts. (buraco de segurança)

  3. Mate o nautilus

    pkill nautilus
    

Referência:

por user.dz 02.06.2014 / 20:09