विंडोज में .EXE फ़ाइलों की तरह डबल क्लिक करके किसी स्क्रिप्ट को कैसे निष्पादित करें?


116

मैं .exeविंडोज में फाइलों की तरह डबल क्लिक करके एक बैश स्क्रिप्ट को कैसे निष्पादन योग्य बना सकता हूं ? मैंने एक लांचर बनाने की कोशिश की और उसे स्क्रिप्ट सौंपने की कोशिश की , लेकिन इसके दो परिणाम हैं:

  1. टर्मिनल ट्विंकल गायब हो जाता है, और कुछ भी नहीं किया जाता है।
  2. आपको काम करने के लिए टर्मिनल में चलना चाहिए।

मेरे पास एक स्क्रिप्ट है जो स्क्रिप्ट में टॉमकैट की सभी निर्भरता सहित एक ऑफ़लाइन पीसी पर टॉमकैट स्थापित करती है। मुझे स्क्रिप्ट को विंडोज़ की तरह डबल क्लिक करने पर काम करने की ज़रूरत है क्योंकि स्क्रिप्ट का उपयोग करने वाले अधिकांश लोग उबंटू से परिचित नहीं होंगे।

उपरोक्त स्पष्टीकरण को भूल जाइए। मैं एक स्क्रिप्ट बनाना चाहता हूं जो टर्मिनल का उपयोग किए बिना, उस पर डबल-क्लिक करके चलाया जा सकता है। किसी को कैसे पता है?


मुझे लगता है कि आप अपनी डेस्कटॉप फ़ाइल को खराब तरीके से लिख रहे होंगे। आप पोस्ट कर सकते हैं ( शब्दशः ) .desktop लांचर है कि आप ने लिखा है?
Jjed

इसके अलावा, क्या आपने इसे देखा है? askubuntu.com/q/34597/24694
Jjed

इसका सिर्फ एक लॉन्चर जहां आप नाम और कमान सौंपते हैं, यह उस बड़े विचार को करने के लिए नहीं है

3
muru ने मुझे इस बात से इत्तला दी, मेरे लिए काम किया: askubuntu.com/questions/286621/…
draoi

1
भविष्य के आगंतुकों के लिए FYI: Nautilus, Ubuntu पर डिफ़ॉल्ट फ़ाइल प्रबंधक, जाहिरा तौर पर कमजोरियों के कारण 2019 में नए रिलीज में निष्पादन को चलाने की क्षमता को हटा देगा। विषय पर लेख और चर्चा के साथ GitLab पर कोड
Sergiy Kolodyazhnyy

जवाबों:


134

मैंने इसका परीक्षण किया और इसने ठीक काम किया। सुनिश्चित करें कि आपकी स्क्रिप्ट सही शेबंग से शुरू होती है , जैसे #!/usr/bin/env bash

तो इन चरणों का पालन करें:

  • हिट Alt+ F2कमांड चलाने के लिए।
  • टाइप करें dconf-editorऔर हिट करें Enter
  • Dconfg-editor में जाएं: org ➤ gnome ➤ nautilus ➤ preferences
  • पर क्लिक करें executable-text-activationऔर ड्रॉप डाउन मेनू से चुनें:

    लॉन्च : स्क्रिप्ट को प्रोग्राम के रूप में लॉन्च करने के लिए।
    या
    पूछें : संवाद के माध्यम से क्या करना है, यह पूछने के लिए।

    स्क्रीनशॉट

  • बंद dconf- संपादक। बस!

वैकल्पिक तरीका, टर्मिनल का उपयोग करना: रन:

gsettings set org.gnome.nautilus.preferences executable-text-activation 'launch'

नोट : फ़ाइल निष्पादन योग्य होनी चाहिए। आपको फ़ाइल की अनुमति बदलने की भी आवश्यकता हो सकती है। राइट क्लिक करें और सेट करें "प्रोग्राम के रूप में फ़ाइल निष्पादित करने दें"

स्क्रीनशॉट

स्रोत


इसने बहुत अच्छा काम किया। बस एक नोट, "ड्रॉप डाउन मेनू" के दाईं ओर सूचीबद्ध मूल्य executable-text-activation(डिफ़ॉल्ट मान है display) पर क्लिक करके पहुंचा जाता है ।
ryanjdillon

5
उन लोगों के लिए जो ऐप को कॉल नहीं कर सकते हैं, आपको इसे पहले स्थापित करने की आवश्यकता हैsudo apt-get install dconf-editor
whale_steward

1
यह डेस्कटॉप को छोड़कर हर जगह काम करता है। मैं इसे डेस्कटॉप पर भी कैसे काम कर सकता हूं? मैं Xubuntu 14.10 का उपयोग कर रहा हूं।

क्या LXDE (लुबंटू के लिए) में ऐसा करने का कोई तरीका है?
चाइल्डोफॉन्ग 20

यह स्लैक्स यूनिक्स के तहत बहुत अच्छा काम करता है - वास्तव में महान यूनिक्स प्रणाली के लिए आप एक अंगूठे ड्राइव से बूट कर सकते हैं।
मूलांक

74

नॉटिलस (AKA फ़ाइलें) पर

  1. फ़ाइलें ( एकता पर संपादित करें (17.04 या नीचे))> वरीयताएँ> व्यवहार टैब पर जाएं

    स्क्रीनशॉट

  2. निष्पादन योग्य पाठ फ़ाइल के लिए सेटिंग्स बदलें।

    स्क्रीनशॉट


3
अब 'फाइलें -> प्राथमिकताएं'। (17.04)
niry

मिठाई! इम्हो जाने का रास्ता।
कोडप्ल्ब

आउटपुट कैसे देखें?
अमृत ​​लॉट

10

उबंटू और सभी यूनिक्स आधारित ओएस में, एफाइक, कुछ भी डिफ़ॉल्ट रूप से निष्पादन योग्य के रूप में सेट नहीं किया गया है। इसे करने के दो तरीके हैं।

  1. उस स्क्रिप्ट या फ़ाइल पर राइट क्लिक करें जिसे आप निष्पादित करना चाहते हैं। फिर प्रॉपर्टीज पर जाएं अनुमतियाँ टैब पर जाएं। Execute कहने वाले चेक बॉक्स पर क्लिक करें।

  2. cdजहाँ फ़ाइल मिलती है उस निर्देशिका में एक टर्मिनल खोलें । टाइप करें । यह फ़ाइल को निष्पादित करने के लिए सेट करेगा।chmod ugo+x filename

अब आपके उपयोगकर्ता अपने दिल की सामग्री पर डबल क्लिक कर सकते हैं।


2
यह अभी भी आपसे पूछेगा कि टर्मिनल में चलाने या प्रदर्शन करने या चलाने के लिए क्या करना है ... इसलिए इसकी आवश्यकता मुझे नहीं है

केवल इस उत्तर ने डेस्कटॉप फ़ाइल को
निष्पादन योग्य

यह टर्मिनल पर फ़ाइल निष्पादित करने के लिए है, न कि डबल क्लिक करके।
डिमिडक

8

मुझे लगता है कि * .desktop फ़ाइल बनाना यहाँ गायब है:

$ cat shortcut-for-my-script.desktop
[Desktop Entry]
Type=Application
Terminal=true
Name=Click-Script
Icon=utilities-terminal
Exec=gnome-terminal -e "bash -c './script.sh;$SHELL'"
Categories=Application;

यदि आप एक स्क्रिप्ट के लिए एक से अधिक * .desktop फ़ाइल बनाते हैं, तो आप विभिन्न मापदंडों को पारित करके कई कॉन्फ़िगरेशन बनाने में सक्षम हैं , जो एक बहुत ही आरामदायक और उपयोगकर्ता के अनुकूल तरीका है।


1
यह उबंटू के लिए सबसे अच्छा जवाब है। ध्यान दें कि आप (या शायद नहीं?) को निर्दिष्ट करने की आवश्यकता है Terminal=Trueऔर Exec=gnome-terminalजब तक आप शाब्दिक रूप से एक स्क्रिप्ट के लिए एक शॉर्टकट नहीं बना रहे हैं जिसे आप टर्मिनल विंडो के भीतर आउटपुट देखना चाहते हैं ... यह भी ध्यान दें कि आप Iconजो भी कस्टम को इंगित कर सकते हैं पीएनजी आप चाहते हो सकता है ...
BuvinJ

6

यदि आप XFce का उपयोग कर रहे हैं तो आप इस कमांड को निष्पादित करके थूनर में निष्पादित स्क्रिप्ट बना सकते हैं:

xfconf-query --channel thunar --property /misc-exec-shell-scripts-by-default \
             --create --type bool --set true

या gui का उपयोग करके xfce4-settings-editorऔर समान गुण बनाकर।

भागो xfce4-settings-editor, फिर दर्ज करें:

  • /misc-exec-shell-scripts-by-default

  • बूलियन

  • सच

xfce4-settings-editor का चित्र


यहाँ थूनर में कस्टम क्रियाओं के साथ उद्देश्य को कैसे प्राप्त किया जा सकता है ("जोखिमपूर्ण" सुविधा को फिर से सक्षम किए बिना)।
सिप्रिकस

इसके अलावा यहां कैसे Zenity का उपयोग करें और एक सवाल पाने के लिए पर "संपादित करें या चलाने के?"
सिप्रिकस

2

आपको 3 बिंदुओं की जांच करनी होगी:

  • Nautilus / निमो विन्यास: https://askubuntu.com/a/286651/301025
  • स्क्रिप्ट फ़ाइल निष्पादन योग्य होनी चाहिए : https://askubuntu.com/a/275714/301025
  • फ़ाइल सिस्टम को निष्पादन की अनुमति देनी चाहिए :

    1. mountकंसोल में टाइप करें
    2. जांचें कि क्या आपके फाइल सिस्टम में noexecझंडा है
    3. noexecसंपादित करके ध्वज को हटाएं /etc/fstabऔर संशोधित प्रणाली को हटाएं (उदाहरण के लिए एक रिबूट कार्य)

1

जब आप डेस्कटॉप को SHEL स्क्रिप्ट या जो कुछ भी कमांड लाइन में लॉन्च करते हैं, स्क्रिप्ट को पृष्ठभूमि में निष्पादित करने के लिए संकेत देना न भूलें।

स्क्रिप्ट खत्म होने पर वह मर जाएगा।


1
मैंने ऐसा किया, लेकिन क्या टर्मिनल सिर्फ

1

umaskअवशिष्ट मान के आधार पर , आप डिफ़ॉल्ट रूप से फ़ाइलों के लिए अनुमतियों को निष्पादित नहीं करते हैं और निष्पादन अनुमतियों को प्राप्त करने के लिए मॉड को बदलना चाहिए, कुछ इस तरह से:

chmod u+x filename

1
ब्रॉथ अली को यकीन है कि मैंने ऐसा करने के लिए स्पष्ट किया

0

थुनर के बारे में जवाब के पूरक के रूप में : यह उत्तर थूनर की एक पिछली विशेषता को दोहरा क्लिक पर स्क्रिप्ट निष्पादित करने के लिए फिर से सक्षम करेगा। लेकिन उस सुविधा को सुरक्षा जोखिम माना गया।

इससे बचने के लिए, शायद सबसे सुरुचिपूर्ण समाधान एक पॉप-अप विंडो प्राप्त करना है जैसे कि "आप उस फ़ाइल के साथ क्या करना चाहते हैं: भागो या संपादित करें?" (उस फ़ाइल को क्लिक करते समय आपके पास PCManFM और निमो जैसे अन्य फ़ाइल प्रबंधकों के समान है - ज़ेनिटी का उपयोग करके: यहाँ


एक वैकल्पिक कस्टम कार्रवाई होगी , शायद सबसे अच्छी विशेषता थूनार की है।

कमांड जो मैं एक निष्पादन योग्य पाठ फ़ाइल चलाने के लिए उपयोग करता हूं sh -c %f, "रन / एक्सक्यूट स्क्रिप्ट" नामक एक कस्टम क्रिया के लिए है।

यहां छवि विवरण दर्ज करें

उपस्थिति की शर्तें बस "पाठ" हैं:

यहां छवि विवरण दर्ज करें

एक समान कमांड को टर्मिनल में चलाने के लिए इस्तेमाल किया जा सकता है एक स्क्रिप्ट ("टर्मिनल में भागो"), जबकि Xfce4 टर्मिनल खुला रखें:

xfce4-terminal -H -x %f

यहां छवि विवरण दर्ज करें

वैकल्पिक रूप से, और शायद अधिमानतः, निष्पादन योग्य लोगों को छोड़कर सभी पाठ फ़ाइलों के लिए इस तरह के विकल्प को छिपाने के लिए , "उपस्थिति की स्थिति" के तहत एक तरीका .shफाइलों (या .pyयदि मामला, आदि) के लिए उपयोग को प्रतिबंधित करना है :

यहां छवि विवरण दर्ज करें

- तदनुसार निष्पादन योग्य फ़ाइलों का नाम बदलने से पहले।


-1

विशेष रूप से एंड्रॉइड स्टूडियो के लिए आप यहां मेरे मूल उत्तर का अनुसरण कर सकते हैं :

डेस्कटॉप लॉन्चर बनाने के लिए:

  • टूल्स मेनू Create Desktop Entry..से क्लिक करें ।

यहां छवि विवरण दर्ज करें

  • यह पासवर्ड के लिए संकेत होगा, अपने वर्तमान लॉगिन का पासवर्ड दर्ज करें।

  • अंत में यह एंड्रॉइड स्टूडियो स्क्रीन में डिस्प्ले नोटिफिकेशन होगा जैसे:

यहां छवि विवरण दर्ज करें

  • आप एप्लिकेशन => प्रोग्रामिंग => एंड्रॉइड स्टूडियो में देख सकते हैं, और आप सिस्टम को पुनरारंभ करने के बाद डेस्कटॉप पर भी देख सकते हैं।

धन्यवाद। :)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.