นี่คือ AppleScript ที่จะช่วยคุณ เปิด AppleScript Editor และบันทึกเป็นสคริปต์ ฉันได้แก้ไขซอร์สที่พบที่นี่เพื่อรองรับการโต้แย้งในบรรทัดคำสั่ง
ใช้แบบนี้:
osascript new_window.scpt http://www.google.com http://www.stackoverflow.com
แน่นอนแทนที่ URL ข้างต้นด้วย URL ของคุณเอง
new_window.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
คุณสามารถสร้างนามแฝงสำหรับสิ่งนี้ในเทอร์มินัลและใช้งานได้ง่ายขึ้น ฉันจะเพิ่มต่อไปนี้เพื่อ~/.bash_profile
:
alias newwindow='osascript /path/to/new_window.scpt'
เรียกnewwindow
สิ่งที่คุณต้องการ บันทึก.bash_profile
และรีสตาร์ท Terminal เพื่อให้ใช้งานได้
ในกรณีที่ทุกคนกำลังมองหาโซลูชันที่คล้ายกันสำหรับ Google Chrome นี่คือแนวคิดที่แตกต่างออกไป
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
$PATH
ด้วย shebang#!/usr/bin/osascript
และทำงานเหมือนมีเสน่ห์ ขอบคุณ!