Я хотел запустить два отдельных экземпляра Chrome, каждый из которых использует свой профиль. Я хотел иметь возможность запускать их из Spotlight , как это моя привычка запускать приложения для Mac. Другими словами, мне понадобились два обычных Mac-приложения, regChromeдля нормального просмотра иaltChrome использования специального профиля, которые можно было бы легко запустить, нажав ⌘-пробел, чтобы вызвать Spotlight, затем «reg» или «alt», затем Enter.
Я полагаю, что для достижения вышеуказанной цели методом грубой силы было бы создать две копии пакета приложений Google Chrome под соответствующими именами. Но это некрасиво и усложняет обновление.
В итоге я получил два приложения AppleScript, каждое из которых содержало по две команды. Вот для 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 перечитывает свой файл значков и получает тот, который соответствует тому, какое из двух приложений было запущено последним, в результате чего два запущенных приложения с одинаковым значком. Но я не стал пытаться это исправить - я держу два браузера на разных рабочих столах, и перемещение между ними не было проблемой.
nohup &решить проблему?