मैंने अपने ड्राइव को माउंट और अनमाउंट करने, दोनों के लिए एप्लाइस्क्रिप्शंस बनाए हैं।
मेरे ऑप्टिकल बे में नियमित एचडीडी। मैकबुक प्रो (देर से 2006)। OSX शेर
जब तक आप डिस्क उपयोगिता नहीं खोलते, नींद से फिर से शुरू करते हैं, या ड्राइव को रिमूव करते हैं, तो ड्राइव नीचे घूमती है और उस तरह से रहती है। स्पॉटलाइट ड्राइव को स्पिन करने का कारण नहीं बनता है। न ही ड्राइव पर किसी अन्य उपनाम का उपयोग करने की कोशिश करता है।
-यदि वहाँ ऐसी प्रक्रियाएँ चल रही हैं जो ड्राइव को बाहर निकालने से रोकती हैं, तो स्क्रिप्ट गतिविधि मॉनिटर खोलती है और टर्मिनल विंडो में lsof चलाती है।
-आप तब तय कर सकते हैं कि प्रक्रिया को मार दिया जाना चाहिए।
-एक संवाद बॉक्स उपयोगकर्ता की हत्या के लिए पुष्टि करता है।
मैं इन्हें एप्सस्क्रिप्ट मेनू से चलाता हूं। आप इसे इस तरह से सक्षम कर सकते हैं:
- ओपन AppleScript Editor.app (अनुप्रयोग -> उपयोगिताएँ)।
- प्राथमिकताएँ खोलें ...
- "मेनू बार में स्क्रिप्ट मेनू दिखाएं" जांचें।
माउंट ड्राइव
on run
try
do shell script "diskutil mountDisk disk1"
on error
end try
end run
अनमाउंट ड्राइव
on run
try
do shell script "hdiutil eject disk1"
on error
tell application "System Events"
set termOpen to count (processes whose name is "Terminal")
set amOpen to count (processes whose name is "Activity Monitor")
end tell
tell application "Terminal"
activate
set newTab to do script "lsof /Volumes/'HFS HD'"
end tell
tell application "Activity Monitor"
activate
end tell
delay 3
set question to display dialog "Kill running?" buttons {"Yes", "No"} default button 2
set answer to button returned of question
if answer is equal to "Yes" then
do shell script "lsof -P | grep '/Volumes/HFS HD' | awk '{print $2}' | xargs kill -9"
do shell script "hdiutil eject disk1"
end if
tell application "Activity Monitor"
if amOpen is 0 then
quit
end if
end tell
tell application "Terminal"
if termOpen is 0 then
quit
else
close (first window whose selected tab is newTab) saving no
end if
end tell
end try
end run
मेरे लिए एकदम सही काम करता है, उम्मीद है कि आपको भी सफलता मिलेगी!