Предположим, у меня есть файл с именем a.txt и другой файл b.txt который является символической ссылкой, указывающей на a.txt . У меня также есть мое собственное разработанное приложение, которое установлено как приложение по умолчанию для файлов .txt . Теперь, когда я печатаю

$ open b.txt
в терминале похоже, что утилита open автоматически разрешает символическую ссылку, потому что мое приложение получило a.txt в качестве параметра при запуске.

Есть ли способ отключить разрешение символических ссылок для open утилиты OSX? Я проверил страницу руководства open но там нет ничего о символических ссылках.

2 ответа2

0

Я нашел обходной путь:

$ open -a /Applications/MyApp.app --args <path_to_file>

Это заставляет open аргумент без изменений. Но есть одна загвоздка - если вы передаете относительный путь в качестве аргумента, то путь будет относительным к /Applications, а не к вашему текущему каталогу, что немного раздражает. Но это лучшее решение, которое я придумал.

0
$ find a.txt -type f -exec open {} \;

-> это откроет ваш файл .txt.

$ find b.txt -type f -exec open {} \;

-> файл не открыт.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .