open -a Терминальный аргумент имени файла вообще не работает, на Mac OSX - PullRequest
0 голосов
/ 06 мая 2018

Я пытаюсь открыть файл C, уже скомпилированный с помощью open -a Аргумент имени файла терминала На самом деле это простой файл server.c. Мне также нужно передать порт в качестве аргумента, но я не могу узнать, как это сделать.

"открыть -а Терминал прокси 8000" он возвращает: «Файл /Users/...../8000 не существует». Итак, я попробовал: "открыть -а Терминал прокси \ 8000" он возвращает: «Файл /Users/...../proxy 8000 не существует.»

Конечно, если я сделаю "./proxy 8000" Это работает.

Так что мне определенно нужно передать параметр di в качестве аргумента в командной строке, но я не могу найти никакой помощи даже в stackoverflow. Любая помощь? Спасибо!

1 Ответ

0 голосов
/ 06 мая 2018

Команда open предназначена для открытия простых файлов, она не поддерживает ваш вариант использования. Есть опция --args, которая передает аргументы приложению, которое оно использует для открытия файла (то есть Терминал), но это не похоже на то, что Терминал передает их.

AppleScript может работать для вас, например, например. из скорлупы:

osascript -e 'tell application "Terminal" to do script "/path/to/proxy 8000"'
...