open -jga TextEdit
abre TextEdit oculto ( -j
) y sin hacer que esté al frente ( -g
). La opción -j
se agregó en 10.8 y solo se muestra en el mensaje de ayuda y no en la página de manual. Si TextEdit ya se está ejecutando, open -ja TextEdit
(sin -g
) solo hará que TextEdit esté al frente y no oculto. Para algunas aplicaciones como TextEdit y Mail, open -jg
abre una nueva ventana visible si la aplicación se está ejecutando pero no tiene ventanas abiertas, pero puede usar algo como pgrep -x TextEdit||open -jga TextEdit
como solución.
Una segunda opción en 10.9 y versiones posteriores es lsappinfo launch launchandhide=true nofront=true /Applications/TextEdit.app
.
Una tercera opción es osascript -e 'launch app "TextEdit"'
. A diferencia de los comandos open
y lsappinfo
, se bloquea hasta que la aplicación termina de abrirse. Para algunas aplicaciones como TextEdit y Mail, el comando launch
abre una nueva ventana visible si la aplicación aún no se está ejecutando.
Editar: ninguna de las opciones anteriores parece funcionar con VirtualBox, pero puedes ocultar VirtualBox después de abrirlo:
open -jga VirtualBox;lsappinfo setinfo -app VirtualBox kLSApplicationIsHiddenKey=true
osascript -e 'launch app "VirtualBox"' -e 'delay 1' -e 'tell app "System Events" to set visible of process "VirtualBox" to false'