Я хочу запустить приложение Wine с передачей файла в качестве аргумента. У меня два файла, с первым у меня нет проблем, но когда в пути есть пробел, wine не может правильно обработать адрес. вот эти два файла:
/home/op/Doc/test.pdf
/home/op/Doc/test vs space.pdf
из командной строки я могу успешно запустить приложение с обоими файлами, используя эту команду:
[/home/op@box ~]: wine "C:\Program Files\Tracker Software\PDF Viewer\PDFXCview.exe" "z:Docs/test.pdf"
[/home/op@box ~]: wine "C:\Program Files\Tracker Software\PDF Viewer\PDFXCview.exe" "z:Docs/test vs space.pdf"
но когда я хочу поместить это в сценарий (чтобы потом посмотреть с другой программой, рейнджером), я не могу запустить программу с тестовыми файлами. Первый скрипт хорошо работает с теми, у которых нет места в адресе, но второй не работает и просто запускает приложение без открытого файла PDF:
Сценарий 1: работа без пробелов:
#!/bin/bash
Filename="z:${1//\//\\}"
wine "C:\Program Files\Tracker Software\PDF Viewer\PDFXCview.exe" $Filename
Сценарий 2: не работает ни в одном из случаев
#!/bin/bash
Filename="z:${1//\//\\}"
Filename='"'$Filename'"'
wine "C:\Program Files\Tracker Software\PDF Viewer\PDFXCview.exe" $Filename
echo $Filename
Я не могу понять, где что-то не так со сценарием (по сравнению с командами, выполняемыми вручную в оболочке). Второй сценарий не открывает файл любого типа, с пробелом в адресе или без него.
пса есть и подобные сценарии здесь , но они страдают от тех же проблем т.е. они не могут запустить PDF с пробелом в адресе либо.