В чем разница между выполнением определенной команды в терминале и командой действия 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 команда.

Другие вопросы по тегам