В чем разница между выполнением определенной команды в терминале и командой действия Thunar, которая открывает терминал и запускает первую команду?
Я имею в виду, что несколько раз мне удавалось успешно выполнить команду в окне терминала, открытом в определенной папке, но при использовании команды (запускаемой не напрямую из терминала, а из настраиваемого действия Thunar), чтобы сделать то же самое - то есть: откройте терминал в той же папке и выполните ту же начальную команду - она не будет работать должным образом.
Например, у меня есть папка, которая содержит PDF-файл. Я хочу сохранить страницы в формате PDF в виде изображений.
Случай 1: Я открываю терминал в этой папке и запускаю эту команду: pdftoppm -png *.pdf prefix
, Страницы PDF извлекаются в виде файлов PNG.
Случай 2: Я пытаюсь сделать то же самое из пользовательских действий Thunar. Я создаю пользовательское действие с помощью команды xfce4-terminal -e "pdftoppm -png *.pdf prefix"
Условия появления; Каталоги, но это ничего не делает. Чтобы получить более подробную информацию, полезно держать это окно терминала открытым после выполнения команды, но я не знаю, как это сделать с терминалом Xfce. Используя gnome-терминал, я создаю профиль с именем new1 с настройкой "Когда команда выходит: держать терминал открытым", а затем добавляю в настраиваемое действие эту команду:
gnome-terminal --window-with-profile=new1 -e "pdftoppm -png *.pdf prefix"
Но это дает ошибку:
I/O Error: Couldn't open file '*.pdf': No such file or directory.
В чем разница между CASE 1 и CASE 2, которая вызывает разные результаты?
У меня есть ответ на вопрос Thunar - Пользовательские действия: сохранить выбранный PDF как изображения. Команда, которая работает в пользовательских действиях Thunar: pdftoppm %f -png %f.png
,
Но мне любопытно, почему command
работает в терминале, но другая команда открывает терминал и запускает command
не.
1 ответ
В моей системе пользовательские действия Thunar, кажется, вызывают команду с bash
и делает использование xfce4-terminal
излишний.
Попробуйте вместо этого следующее действие:
cd %f && pdftoppm -png *.pdf prefix
Вы получаете I/O Error: Couldn't open file '*.pdf': No such file or directory.
сообщение, поскольку ваш выбор теперь является каталогом, а текущий каталог - на один уровень выше.
Так что нужно сначала cd
в цель перед запуском pdftoppm
команда.