जवाबों:
का उपयोग करें osascript
। उदाहरण के लिए:
osascript -e 'tell app "Finder" to display dialog "Hello World"'
आप जो भी एप्लिकेशन के साथ "खोजक" को बदलना चाहते हैं। ध्यान दें कि यदि वह ऐप पृष्ठभूमि में है, तो संवाद पृष्ठभूमि में भी दिखाई देगा। हमेशा अग्रभूमि में दिखाने के लिए, एप्लिकेशन के रूप में "सिस्टम ईवेंट" का उपयोग करें:
osascript -e 'tell app "System Events" to display dialog "Hello World"'
मैक ओएस एक्स संकेत पर अधिक पढ़ें ।
टर्मिनल से सूचना केंद्र सूचना को ट्रिगर करने के लिए इस कमांड का उपयोग करें।
osascript -e 'display notification "Lorem ipsum dolor sit amet" with title "Title"'
यदि आप किसी भी मैक ओएस एक्स संस्करण का उपयोग कर रहे हैं जिसमें अधिसूचना केंद्र है, तो आप टर्मिनल-नोटिफायर रत्न का उपयोग कर सकते हैं । पहले इसे स्थापित करें (आपको आवश्यकता हो सकती है sudo
):
gem install terminal-notifier
और फिर बस:
terminal-notifier -message "Hello, this is my message" -title "Message Title"
इस OS X डेली पोस्ट को भी देखें ।
brew install terminal-notifier
यह भी काम करता है अगर आप काढ़ा करना पसंद करते हैं।
यह पिछले अनुप्रयोग पर ध्यान केंद्रित करेगा और यदि उत्तर खाली था तो स्क्रिप्ट से बाहर निकल जाएगा।
a=$(osascript -e 'try
tell app "SystemUIServer"
set answer to text returned of (display dialog "" default answer "")
end
end
activate app (path to frontmost application as text)
answer' | tr '\r' ' ')
[[ -z "$a" ]] && exit
यदि आपने सिस्टम ईवेंट्स को डायलॉग प्रदर्शित करने के लिए कहा है, तो थोड़ी देरी होगी अगर यह पहले नहीं चल रहा था।
प्रदर्शन संवाद के बारे में दस्तावेज़ीकरण के लिए, AppleScript Editor में मानक अतिरिक्त का शब्दकोश खोलें या AppleScript भाषा गाइड देखें ।
AppleScript के साथ :
display notification "Notification text" with title "Notification Title" subtitle "Notification sub-title" sound name "Submarine"
साथ टर्मिनल / bash और osascript
:
osascript -e 'display notification "Notification text" with title "Notification Title" subtitle "Notification sub-title" sound name "Submarine"'
सब-हेडिंग नहीं लेता है और न ही ध्वनि कठिन है।
AppleScript के साथ :
display alert "Alert title" message "Your message text line here."
साथ टर्मिनल / bash और osascript
:
osascript -e 'display alert "Alert title" message "Your message text line here."'
अलर्ट लाइन के बाद साउंड बजाने के लिए बैश में एक लाइन जोड़ें :
afplay /System/Library/Sounds/Hero.aiff
AppleScript में समान पंक्ति जोड़ें , शेल स्क्रिप्ट को कार्य करने दें:
do shell script ("afplay /System/Library/Sounds/Hero.aiff")
यहाँ से चुनने के लिए ध्वनियों में निर्मित macOS की सूची ।
टर्मिनल और applescript सूचनाओं पर एक आसान लेख से Paraphrased ।
और मेरा 15 प्रतिशत। मैक टर्मिनल आदि के लिए एक लाइनर जो कुछ भी और एक संदेश के लिए बस MIN = सेट करें
MIN=15 && for i in $(seq $(($MIN*60)) -1 1); do echo "$i, "; sleep 1; done; echo -e "\n\nMac Finder should show a popup" afplay /System/Library/Sounds/Funk.aiff; osascript -e 'tell app "Finder" to display dialog "Look away. Rest your eyes"'
अधिक आदेशों को संयोजित करने की प्रेरणा के लिए एक बोनस उदाहरण; यह संदेश पर भी स्टैंडबाई नींद के लिए एक मैक डाल देगा :) सुडो लॉगिन की जरूरत है, तो दो घंटे के लिए 60 * 2 के रूप में गुणा गुणा हो जाता है
sudo su
clear; echo "\n\nPreparing for a sleep when timers done \n"; MIN=60*2 && for i in $(seq $(($MIN*60)) -1 1); do printf "\r%02d:%02d:%02d" $((i/3600)) $(( (i/60)%60)) $((i%60)); sleep 1; done; echo "\n\n Time to sleep zzZZ"; afplay /System/Library/Sounds/Funk.aiff; osascript -e 'tell app "Finder" to display dialog "Time to sleep zzZZ"'; shutdown -h +1 -s
एक simular प्रश्न और उत्तर यहां उपलब्ध है: /superuser/246353/how-to-make-the-terminal-do-a-pop-up-alert-in-osx
मैंने इसे हल करने के लिए एक स्क्रिप्ट बनाई जो यहां है । इसके लिए आपको किसी अतिरिक्त सॉफ्टवेयर की आवश्यकता नहीं है। स्थापना:
brew install akashaggarwal7/tools/tsay
उपयोग:
sleep 5; tsay
योगदान करने के लिए स्वतंत्र महसूस करो!