Проверьте, установлено ли приложение на MacOS с помощью Терминала - PullRequest
0 голосов
/ 09 января 2019

Я делаю небольшой кроссплатформенный инструмент CLI в TypeScript / NodeJs. Его ключевая особенность требует, чтобы он проверял, какие браузеры установлены на хосте. На Linux и Windows это работает без нареканий. Я провел много исследований о том, как мне этого добиться, и в настоящее время я использую «reg query» для Windows и «which» для ОС на основе Unix - Linux, но я не знаю, с чего начать с MacOS.

Я знаю, что это Unix-подобная ОС, но я не могу протестировать свой инструмент. Может кто-нибудь, пожалуйста, помогите мне, потому что у меня нет физического MacBook, поэтому я не могу проверить, какую команду bash мне следует использовать. Я не прошу вас писать полный код, какие команды использовать или, что еще лучше, рабочий пример (скриншот) команды, которая работает правильно. Я знаю, что мог бы использовать «which», «type» или даже «open -Ra» (не уверен насчет этого), я просто не знаю, каков их вывод.

Ответы [ 3 ]

0 голосов
/ 13 января 2019

Команда:

mdfind "kMDItemKind == 'Application'"

выведет список установленных приложений в системе (по одному на строку) с указанием их путей. E.g.:

/ Приложения / Safari Technology Preview.app
/Applications/Safari.app

Вы можете искать поддерживаемые браузеры в этом списке.

0 голосов
/ 20 марта 2019

Вы также можете использовать следующее:

mdfind -name 'kMDItemFSName=="*.app"' -onlyin /Volumes/Macintosh_HD/Applications/

или

mdfind -name 'kMDItemFSName=="*.app"' -onlyin /Volumes/Macintosh\ HD/Applications/ |cut -d "/" -f3|grep .app
0 голосов
/ 09 января 2019

Mac OS построена на версии Unix Free BSD. Многие команды Linux, вероятно, будут работать и на Mac. Для доступа к этой части ОС можно использовать эмуляторы терминала «Терминал» и «iTerm». Команда which отлично работает на Mac.

Если ваша задача просто найти браузеры на компьютере Mac, я использую команду ls, переданную в grep. Большинство приложений на компьютере Mac хранятся в папке «Приложения». Эта папка находится на корневом уровне. Чтобы найти конкретный браузер, я набрал бы:

> cd Applications 
> ls -l | grep -i BrowserName

Вы можете сделать это для каждого браузера, о котором вы знаете. Я не знаю, как найти браузеры в целом. Если вы это сделаете, вы можете просто попробовать ту же команду на Mac.

Если вам нужна дополнительная помощь, не стесняйтесь оставлять комментарии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...