Open multiple Safari tabs from the command line on Mac OS X
Solution 1
Here's how to change Safari's general settings to open new URLs in new tabs: Make Safari open new links in existing windows as a tab, rather than a new window
I don't know if there's a way to do it by specifying an option at the command line.
EDIT: If you'd rather not change your Safari preferences for some reason but still want to be able to open new URLs in tabs from the command line, you could create an AppleScript like this:
-- ~/Library/Scripts/newtab.scpt (or whatever name you'd like)
-- _argv will be the URLs given at the command line
on run _argv
try
tell application "Safari" to activate
--repeat for each URL
repeat with _i from 1 to length of _argv
-- Copy URL to clipboard
tell application "Safari" to set the clipboard to item _i of _argv
-- Tell Safari to open a new tab, paste the URL, and "hit" Return
tell application "System Events"
tell process "Safari"
tell menu bar 1 to click menu item "New Tab" of menu "File" of menu bar item "File"
tell menu bar 1 to click menu item "Open Location…" of menu "File" of menu bar item "File"
tell menu bar 1 to click menu item "Paste" of menu "Edit" of menu bar item "Edit"
key code 36
end tell
end tell
end repeat
end try
end run
and define an alias (or shell function, or shell script, or whatever) like this:
alias openurl="osascript ${HOME}/Library/Scripts/newtab.scpt"
and then use it like this:
openurl superuser.com stackoverflow.com serverfault.com
It's kind of ugly, but it should get the job done. I think. Unless you're really smitten with open
.
Solution 2
Lawrence link is the answer :
Select the option to open in new tabs from Preferences -> General
AND
The most important part :
defaults write com.apple.Safari TargetedClicksCreateTabs -bool true
With both options, when I try open http://example.com http://example.org
they both open in the same window in two different tabs.
Related videos on Youtube
Kurru
You can find my blog at https://pupeno.com where I publish about coding and other stuff.
Updated on September 17, 2022Comments
-
Kurru over 1 year
I'm currently using this simple command to open web sites from the command line:
open http://example.com
but when I open two, even doing
open http://example.com http://example.org
they open in separate Safari windows. How can I open them in the same window as two tabs without changing Safari's settings in any way?
-
Lawrence Velázquez over 14 yearsAgreed, it's definitely easier to change the Safari preference. I'd also imagine that you want similar behavior when clicking on links, too.
-
-
Laura over 14 yearsI can confirm, I have that option activated and when doing
open http://www.google.com http://www.google.fr
it opens the site in one window.