Я хотел иметь два отдельных экземпляра Chrome, каждый из которых использует свой собственный профиль. Я хотел иметь возможность запустить их с Spotlight, так же как и моя привычка запускать приложения Mac. Другими словами, мне понадобилось два обычных приложения для Mac: regChrome
для обычного просмотра и altChrome
, чтобы использовать специальный профиль, чтобы его можно было легко запустить, нажав ⌘-space, чтобы вызвать Spotlight, затем «reg» или «alt», затем Enter.
Я предполагаю, что для достижения вышеуказанной цели можно использовать две копии пакета приложений Google Chrome под соответствующими именами. Но это уродливо и усложняет обновление.
В чем я оказался, было два приложения: , содержащие по две команды.Вот один для altChrome
:
do shell script "cd /Applications/Google\\ Chrome.app/Contents/Resources/; rm app.icns; ln /Users/garbuck/local/chromeLaunchers/Chrome-swirl.icns app.icns"
do shell script "/Applications/Google\\ Chrome.app/Contents/MacOS/Google\\ Chrome --user-data-dir=/Users/garbuck/altChrome >/dev/null 2>&1 &"
Вторая строка начинается Chrome с альтернативным профилем (параметр --user-data-dir
).
Первая строка - неудачная попытка дать двум приложениям различные значки. Первоначально он работает нормально. Однако рано или поздно Chrome перечитывает свой файл значков и получает тот, который соответствует любому из двух приложений, который был запущен последним, в результате чего два запущенных приложения с одним и тем же значком. Но я не потрудился попытаться это исправить - я держу два браузера на отдельных настольных компьютерах, и переключение между ними не было проблемой.
Я не могу ответить на этот вопрос. «open» не принимает аргументы командной строки? Что «открыто»? Открыт ли AppleScript? Как «nohup &» решает проблему? –
man open (1) - команда OS X для запуска файлов или приложений –
Это должно быть на superuser.com –