Aquí tienes un AppleScript que debería ayudarte. Abra el Editor AppleScript y guarde esto como un script. He modificado la fuente que encontré aquí para admitir argumentos en la línea de comandos.
Úsalo así:
osascript new_window.scpt http://www.google.com http://www.stackoverflow.com
Por supuesto, sustituya las URL anteriores por sus propias URL.
nueva_ventana.scpt
on run argv
tell application "Safari"
if (count argv) = 0 then
-- If you dont want to open a new window for an empty list, replace the
-- following line with just "return"
set {first_url, rest_urls} to {"", {}}
else
-- `item 1 of ...` gets the first item of a list, `rest of ...` gets
-- everything after the first item of a list. We treat the two
-- differently because the first item must be placed in a new window, but
-- everything else must be placed in a new tab.
set {first_url, rest_urls} to {item 1 of argv, the rest of argv}
end if
make new document at end of documents with properties {URL:first_url}
tell window 1
repeat with the_url in rest_urls
make new tab at end of tabs with properties {URL:the_url}
end repeat
end tell
activate
end tell
end run
Incluso podrías crear un alias para esto en Terminal y poder usarlo más fácilmente. Yo añadiría lo siguiente a ~/.bash_profile
:
alias newwindow='osascript /path/to/new_window.scpt'
Llame a newwindow
lo que quieras. Guardar .bash_profile
y reinicie Terminal para que funcione.
En caso de que alguien esté buscando una solución similar para Google Chrome, he aquí una versión diferente de la misma idea.
chrome_new_window.scpt
on run argv
tell application "Google Chrome"
if (count argv) = 0 then
make new window
else
tell (make new window)
set URL of active tab to item 1 of argv
repeat with the_url in the rest of argv
open location the_url
end repeat
end tell
end if
set active tab index of first window to 1
activate
end tell
end run