У меня есть файл .command на Mac, где мне нужно запустить команду, которая содержит два пути к файлам, и оба пути к файлам содержат шведский символ (ä
). Вот команда, которую мне нужно выполнить:
hdiutil convert -format UDZO -o ~/OneDrive/Documents/MittBästaProgram/install-mac-readonly.dmg ~/OneDrive/Documents/Mitt/BästaProgram/install-mac-readandwrite.dmg
Ввод этого вручную в терминале работает просто отлично, но проблема в том, что тот факт, что путь к файлу содержит ä
заставляет его работать неправильно, когда я запускаю его из файла .command. Когда я запустил этот файл .command, я получил вывод, где ä
в именах файлов был заменен знаком вопроса. Это вывод, который я получил:
line 1: 828 Segmentation fault: 11 hdiutil convert -format UDZO -o ~/OneDrive/Documents/MittB?staProgram/install-mac-readonly.dmg ~/OneDrive/Documents/Mitt/B?staProgram/install-mac-readandwrite.dmg
Так как он заменил ä
на вопросительные знаки, я заставил меня предположить, что у него были проблемы с акцентированными символами в именах файлов. Чтобы быть уверенным в этом, я скопировал файлы на рабочий стол и попытался запустить его оттуда (на пути к рабочему столу нет символов с акцентом):
hdiutil convert -format UDZO -o ~/Desktop/install-mac-readonly.dmg ~/Desktop/install-mac-readandwrite.dmg
Это работало очень хорошо, что означает , что проблема в первом является ä
в пути к файлу.
Я знаю, что в Windows есть аналогичные проблемы с файлами .bat (эквивалент в Windows для файлов .command), и там эту проблему можно решить, добавив chcp 1252
в начале файла .bat. Поэтому я попытался сделать то же самое с файлом .command на Mac, чтобы он стал моим файлом .command:
chcp 1252
hdiutil convert -format UDZO -o ~/OneDrive/Documents/MittBästaProgram/install-mac-readonly.dmg ~/OneDrive/Documents/Mitt/BästaProgram/install-mac-readandwrite.dmg
Это тоже не сработало, это дало мне ошибку, сообщив, что chcp: command not found
.
Я также попытался использовать cd
и относительные пути, как это:
cd ~/OneDrive/Documents/MittBästaProgram
hdiutil convert -format UDZO -o install-mac-readonly.dmg install-mac-readandwrite.dmg
Это дало мне ту же проблему, что и раньше, это то, что он не мог найти путь, содержащий ä
. Это вывод, который я получил:
line 1: cd: /Users/donaldduck/OneDrive/Documents/MittB?staProgram: No such file or directory
Поэтому мой вопрос заключается в том, как я могу использовать пути к файлам с акцентированными символами, такими как ä
в файле .command на Mac?