open -jga TextEdit
abre TextEdit oculto ( -j
) y sin hacerla frontal ( -g
). El -j
fue añadida en 10.8 y sólo se muestra en el mensaje de ayuda y no en la página man. Si TextEdit ya se está ejecutando, open -ja TextEdit
(sin -g
) sólo haría que TextEdit estuviera más adelante 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 ninguna ventana abierta, pero puede utilizar algo como pgrep -x TextEdit||open -jga TextEdit
como solución.
Una segunda opción en 10.9 y posteriores es lsappinfo launch launchandhide=true nofront=true /Applications/TextEdit.app
.
Una tercera opción es osascript -e 'launch app "TextEdit"'
. A diferencia del open
y lsappinfo
se bloquea hasta que la aplicación termine de abrirse. Para algunas aplicaciones como TextEdit y Mail, el launch
abre una nueva ventana visible si la aplicación no se está ejecutando.
Edición: 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'