Como posso obter um nome de diretório por um diálogo de janela chamado no shell script?

2

Eu tenho um script de shell e quero obter um nome de diretório escolhido por um diálogo nautilus (ou outra ferramenta). Ex:

#/usr/bin/bash
# choosing a path name
export my_directory='pwd'

# open a nautilus dialog (1)
# which command may I do here to get the dirercory?
my_directory='nautilus ${my_directory}'

# my directory now has the directory chosen by nautilus dialog
echo "my directory is ${my_directory}"

É possível com componentes nativos do Ubuntu?

    
por gwarah 11.07.2016 / 16:23

1 resposta

5

Uma maneira bastante simples seria usar zenity , por exemplo,

# basic syntax
zenity --file-selection --directory --filename="$PWD/"

Um código simples (fonte: ajuda do zenity do gnome )

#!/bin/bash

DIR='zenity --file-selection --directory --title="Select a File"'
case $? in
         0)
                echo "\"$DIR\" selected.";;
         1)
                echo "No file selected.";;
        -1)
                echo "An unexpected error has occurred.";;
esac

Veja zenity --help-file-selection para opções adicionais.

    
por steeldriver 11.07.2016 / 17:39