Какой параметр он предоставляет, когда мы используем «открыть с» в файле? - PullRequest
0 голосов
/ 15 марта 2012

Я сделал просмотрщик изображений в Python.И я хочу использовать его для просмотра изображений из моих папок.Я сделал bash-файл, который запустил бы просмотрщик изображений.Теперь я застрял.Когда я щелкаю правой кнопкой мыши по изображению и выбираю опцию «открыть с помощью» и предоставляю файл bash (вышеупомянутый файл, чтобы запустить просмотрщик изображений), какие аргументы / параметры (если они есть) передаются сценарию bash?Я использую Arch Linux.Мой рабочий стол - Gnome + Awesome.Мой файловый менеджер - Nautilus.

Я перестал использовать bash-файл (о котором я упоминал ранее в этом вопросе).

Я добавил

   #!/usr/bin/python2 

и сделал егоисполняемый файл.Он работает в терминале.

Я добавил псевдоним в .bashrc как

   alias imview='~/./image-viewer.py'

Когда используется imview в терминале, он работает.

Но когда я добавляю imview вы в«открыть с помощью» командной строки, открывается новая вкладка, но затем она не работает.И он прячется через несколько секунд.Есть идеи, в чем может быть проблема?

Ответы [ 2 ]

4 голосов
/ 15 марта 2012

Вам не нужен скрипт Bash, чтобы запустить просмотрщик изображений. Вместо этого добавьте это в качестве первой строки в скрипте Python:

#!/usr/bin/python

А также сделать исполняемый скрипт Python.

Тогда вы сможете запустить скрипт напрямую.

Если вы выберете «Открыть с помощью ...», то имя файла должно быть первым аргументом сценария (sys.argv[1]).

0 голосов
/ 15 марта 2012

Аргументы сценария оболочки доступны как "$1", "$2" и т. Д. Переменная "$@" содержит весь список аргументов, а значение $# указывает, сколько существует аргументов.

Неясно, зачем вам нужен скрипт оболочки.В простейшем случае добавьте строку shebang в ваш скрипт Python (что-то вроде #!/usr/bin/python в качестве первой строки файла скрипта) и пометьте ее как исполняемую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...