2009-12-22 17 views
14

मैं एक तरह से बस इसके माउंट बिंदु के साथ एक घुड़सवार डिस्क छवि के .dmg पथ पाने के लिए देख रहा हूँ से .dmg का पथ प्राप्त करें।माउंट बिंदु

मैं एक "सरल" खोजक सेवा कि डिस्क छवि ejects और साथ .dmg ट्रैश लिखना चाहते हैं। निकास छोटा है, लेकिन मुझे लगता है कि .dmg के पथ को कैसे समझें, बस माउंट पॉइंट दिए गए हैं।

Diskutil पता नहीं लग रहा है या नहीं कह रहा है।

यह एक स्क्रिप्ट के लिए है, तो AppleScript- या शेल-आधारित सुझाव पसंद किया जाता है।

+0

मुझे नहीं लगता कि आपको ऐप्पलस्क्रिप्ट या खोल आधारित सुझाव प्राप्त करने जा रहे हैं क्योंकि आपको शायद ड्राइवर या कम से कम इसके उपयोगकर्ता एजेंट से बात करने की ज़रूरत है। –

+0

मैंने सोचा कि वहाँ कुछ ऐसा हो सकता है जैसे hdiutil या diskutil जो मदद कर सकता है, या शायद माउंट डिस्क छवियों पर एक खोजक संपत्ति। – wbg

उत्तर

15

उपयोग hdiutil info वर्तमान में घुड़सवार छवियों के बारे में जानकारी प्राप्त करने के लिए। फिर सभी फ़ाइल सिस्टम को निकालने के लिए hdiutil detach /Mount/Point का उपयोग करें, और छवि को अलग करें।

आप एक से अधिक छवियों रखा जाता है, तो सही छवि-पथ को खोजने के लिए hdiutil info से उत्पादन पार्स करने के लिए की आवश्यकता होगी। यह शायद प्लास्ट आउटपुट प्रारूप hdiutil info -plist का उपयोग करने के लिए और अधिक मजबूत होगा और plistlib के साथ एक पाइथन स्क्रिप्ट या System Events से एक ऐप्पलस्क्रिप्ट चलाएं।

यहाँ आप जानकारी देने के लिए एक त्वरित और गंदा अजगर स्क्रिप्ट है। यह अजगर दुभाषिया का उपयोग कर विकल्पों की तलाश करना आसान है:,

>>> import plistlib 
>>> from subprocess import Popen, PIPE 
>>> output = Popen(["hdiutil", "info", "-plist"], stdout=PIPE).communicate()[0] 
>>> pl = plistlib.readPlistFromString(output) 
>>> for image in pl['images']: 
... for se in image['system-entities']: 
...  if se.get('mount-point') == '/Volumes/blah': 
...   print image['image-path'] 
/Path/To/blah.dmg 
+0

हालांकि, मुझे .dmg को कचरा करने में मदद नहीं करेगा। – wbg

+0

क्षमा करें, उस बिंदु को याद किया। अद्यतन उत्तर देखें। –

+0

शानदार! hdiutil जानकारी सिर्फ वही है जो मैं ढूंढ रहा हूं! – wbg

3

प्रारंभ टर्मिनल कार्य करें:

$ cd /Volumes 
$ hdutil info 

संदिग्ध डीएमजी-फ़ाइलों का स्थान है कि करने के लिए छवि-पथ

cd के नीचे दिखाई देगा स्थान, और करें:

$ ls filename 

खोजक में वॉल्यूम अनमाउंट करें, और अंत में टर्मिनल में:

$ rm filename 

शुभकामनाएं।

संबंधित मुद्दे