$ find a.txt -type f -exec open {} \;
-> this open your a.txt file.
$ find b.txt -type f -exec open {} \;
-> no file is open.
Предположим, у меня есть файл с именем a.txt
и другой файл, на b.txt
который указывает символическая ссылка a.txt
. У меня также есть собственное разработанное приложение, которое устанавливается в качестве приложения по умолчанию для .txt
файлов. Теперь, когда я печатаю
$ open b.txtв терминале похоже, что
open
утилита автоматически разрешила символическую ссылку, потому что мое приложение получило a.txt
в качестве параметра при запуске. Есть ли способ отключить разрешение символических ссылок для open
утилиты OSX ? Я проверил страницу руководства, open
но там нет ничего о символических ссылках.
$ find a.txt -type f -exec open {} \;
-> this open your a.txt file.
$ find b.txt -type f -exec open {} \;
-> no file is open.
Я нашел обходной путь:
$ open -a /Applications/MyApp.app --args <path_to_file>
Это заставляет open
передать аргумент без изменений. Но есть одна загвоздка - если вы передаете относительный путь в качестве аргумента, то путь будет относительным к / Applications, а не к вашему текущему каталогу, что немного раздражает. Но это лучшее решение, которое я придумал.