2011-12-07 20 views
129

सबसे पहले मैं मैक का उपयोग कर रहा हूँ।मैं इस फ़ाइल को दो क्लिक के माध्यम से निष्पादन योग्य कैसे बना सकता हूं?

अगला, मुझे यह "file.sh" निष्पादित करने की आवश्यकता है जिसे हम इसे कॉल करेंगे। हर मैं की जरूरत है यह निष्पादित करने के लिए मैं खोलने की भी आवश्यकता टर्मिनल और प्रकार:

cd /Users/Jacob/Documents/folderWithFileInIt 
bash file.sh 

यह ठीक है, लेकिन मुझे लगता है कि यह एक बहुत तेज हो सकता है अगर मैं फ़ाइल डबल क्लिक पर अमल करते हैं, आपको नहीं लगता कि ?

तो मेरा सवाल यह है कि, मैं इस फ़ाइल को डबल क्लिक के माध्यम से निष्पादन योग्य कैसे बना सकता हूं?

मेरे विचारों या तो:

क) टर्मिनल और अनुमतियों को बदलने में chmod की तरह कुछ टाइप?

बी) एक फ़ाइल बनाएं, मैंने ऊपर लिखा कोड डाला है^और फिर उस फ़ाइल को निष्पादन योग्य बनाएं?

सी) किसी भी तरह से स्वचालन करना ऐसा करने के लिए?

कौन सा तरीका सबसे अच्छा है, या क्या कोई बेहतर तरीका है? कृपया जितना संभव हो उतना समझाएं, मैं टर्मिनल में नया हूं। धन्यवाद।

+1

यदि आप एक अच्छा, आसान क्लिक स्क्रिप्ट चाहते हैं, तो हाँ, ऑटोमेटर सही टूल है। आपको पता है कि आपके प्रश्न से, तो आपका प्रश्न क्या है? –

उत्तर

275

डिफ़ॉल्ट रूप से, *.sh फ़ाइलों को एक टेक्स्ट एडिटर (एक्सकोड या टेक्स्ट एडिट) में खोला जाता है। शेल स्क्रिप्ट बनाने के लिए जो टर्मिनल में इसे खोलने पर निष्पादित करेगा, इसे "कमांड" एक्सटेंशन के साथ नाम दें, उदाहरण के लिए, file.command। डिफ़ॉल्ट रूप से, ये टर्मिनल को भेजे जाते हैं, जो फ़ाइल को शेल स्क्रिप्ट के रूप में निष्पादित करेंगे।

तुम भी फ़ाइल सुनिश्चित करने के लिए की आवश्यकता होगी, निष्पादन योग्य है उदा .:

chmod +x file.command 
इस बिना

, टर्मिनल यह निष्पादित करने के लिए मना कर देगा।

ध्यान दें कि स्क्रिप्ट को इस विशिष्ट परिदृश्य में #! उपसर्ग के साथ शुरू करने की आवश्यकता नहीं है, क्योंकि टर्मिनल विशेष रूप से इसे आपके डिफ़ॉल्ट खोल के साथ निष्पादित करने की व्यवस्था करता है। (बेशक, आप #! लाइन जोड़ सकते हैं यदि आप कस्टमाइज़ करना चाहते हैं कि कौन सा खोल उपयोग किया जाता है या यदि आप यह सुनिश्चित करना चाहते हैं कि आप इसे एक अलग खोल का उपयोग करते समय कमांड लाइन से निष्पादित कर सकें।)

यह भी ध्यान दें कि टर्मिनल निष्पादन कार्य निर्देशिका को बदलने के बिना खोल स्क्रिप्ट। यदि आपको वास्तव में किसी विशेष कार्य निर्देशिका के साथ चलाने की आवश्यकता है तो आपको cd कमांड के साथ अपनी स्क्रिप्ट शुरू करने की आवश्यकता होगी।

+0

अधिक उपयोगी उत्तर के लिए धन्यवाद। – Jacob

+35

इसके अलावा आप वर्तमान कार्य निर्देशिका को उस निर्देशिका में सेट करने के लिए 'cd" \ 'dirname" $ ​​0 "\' "' का उपयोग कर सकते हैं जहां आपका खोल स्क्रिप झूठ बोलता है। – gearsdigital

+2

सौंदर्यशास्त्र के कारणों के लिए आपको .command फ़ाइल पर राइट क्लिक करना चाहिए और इन्फोस खोलना चाहिए। वहां आपके पास प्रत्यय (नाम और प्रत्यय के तहत) को छिपाने का विकल्प है। – Bijan

12

तुम बस खोजक बता टर्मिनल में .sh फ़ाइल खोलने के लिए कर सकते हैं:

  1. फ़ाइल
  2. उस पर जानकारी (cmd-i) जाओ
  3. का चयन करें अनुभाग "इसके साथ खोलें" में, चुनें "अन्य ..." पॉपअप मेनू में
  4. आवेदन के रूप में टर्मिनल चुनें

इस नाम के रूप में ठीक उसी असर नहीं होगा इसे .command को छोड़कर ... आपको इसका नाम बदलने की आवश्यकता नहीं है :)

25

एक्सटेंशन को पूरी तरह से निकालें और फिर डबल-क्लिक करें। अधिकांश सिस्टम शैल स्क्रिप्ट इस तरह हैं।जब तक यह shebang है, यह काम करेगा।

+3

कमांड किए बिना प्रत्यय को बदल नहीं सकते हैं आपके उत्तर ने मैकोज़ के लिए चाल की है ... सरल और त्वरित – Sam

+1

बीटीडब्ल्यू, "शेबांग" ज्यादातर इस पंक्ति को किसी भी पंक्ति के सामने है: #!/बिन/sh लेकिन यह अलग हो सकता है, अन्य मामलों के लिए प्रदान किया गया लिंक पढ़ें। –

2
  1. लॉन्च टर्मिनल
  2. प्रकार -> नैनो fileName
  3. पेस्ट बैच फ़ाइल सामग्री और यह
  4. प्रकार बचाने -> chmod + x fileName
  5. यह exe फ़ाइल बनाएगा अब आप डबल क्लिक कर सकते हैं और यह।

फ़ाइल का नाम डबल कोट्स के तहत होना चाहिए। के बाद से मैं Mac-> उपयोग कर रहा हूँ बैच फ़ाइल की मेरे मामले सामग्री में

सीडी/उपयोगकर्ताओं/yourname/दस्तावेज़/SeleniumServer

जावा जार सेलेनियम-server-स्टैंडअलोन-3.3.1.jar है - रोल हब

यह सुनिश्चित करेगा कि

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

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