2011-06-04 8 views
10

के साथ एक शेल स्क्रिप्ट चलाएं जब मैं किसी वेबसाइट पर बटन दबाता हूं तो मैं एक बैश स्क्रिप्ट लॉन्च करना चाहता हूं। यह मेरा पहला प्रयास है:एचटीएमएल बटन

<button type="button" onclick="/path/to/name.sh">Click Me!</button> 

लेकिन कोई भाग्य नहीं। कोई सुझाव?

+3

क्या आप उपयोगकर्ता की मशीन या सर्वर पर स्क्रिप्ट चलाने की कोशिश कर रहे हैं? सर्वर पर – Mat

+1

। मैं डेबियन – dukevin

+0

@Mat चला रहा हूं उपयोगकर्ता की मशीन पर स्क्रिप्ट चलाने के मामले के बारे में क्या? – iwantmyphd

उत्तर

16

ल्यूक ने कहा के रूप में आप php की तरह एक सर्वर साइड भाषा का उपयोग करने, जरूरत है। यह एक बहुत आसान php उदाहरण है:

<?php 
if ($_GET['run']) { 
    # This code will run if ?run=true is set. 
    exec("/path/to/name.sh"); 
} 
?> 

<!-- This link will add ?run=true to your URL, myfilename.php?run=true --> 
<a href="?run=true">Click Me!</a> 

सहेजें इस myfilename.php के रूप में और php के साथ एक वेब सर्वर स्थापित के साथ एक मशीन पर रखें। एएसपी, जावा, रूबी, पायथन, के साथ एक ही चीज़ को पूरा किया जा सकता है ...

+2

यह उत्तर अपाचे 2 और php5 के साथ मेरे उबंटू डेस्कटॉप पर काम करता है। इस उत्तर को बेहतर ढंग से समझने में सहायता के लिए कुछ अतिरिक्त जानकारी निम्नलिखित है: 1. "myfilename.php" को वेब सर्वर की मूल निर्देशिका (DocumentRoot) के अंतर्गत रखा जा सकता है जो आमतौर पर "/ var/www" होता है। 2. "myfilename.php" में उपरोक्त कोड, साथ ही अन्य HTML कोड भी शामिल है। 3. वेब क्लाइंट HTTP पते के रूप में " /myfilename.php" का उपयोग करता है। – jonathanzh

5

पीएचपी संभावना सबसे आसान है।

बस script.php फ़ाइल बनाएं जिसमें <?php shell_exec("yourscript.sh"); ?> है और उस गंतव्य पर बटन क्लिक करने वाले किसी भी व्यक्ति को भेजें। आप हेडर के साथ मूल पृष्ठ पर उपयोगकर्ता लौट सकते हैं:

<?php 
shell_exec("yourscript.sh"); 
header('Location: http://www.website.com/page?success=true'); 
?> 

संदर्भ: http://php.net/manual/en/function.shell-exec.php

3

यह वास्तव में सिर्फ बीबीबी के जवाब का एक विस्तार है जो मेरे प्रयोग काम कर पाने के लिए करने के लिए नेतृत्व है।

यह स्क्रिप्ट बस "ओपन स्क्रिप्ट" कहने वाले बटन पर क्लिक करते समय एक फ़ाइल/tmp/testfile बनायेगी।

इसके लिए 3 फाइलों की आवश्यकता है।

  1. एक बटन के साथ वास्तविक HTML वेबसाइट।
  2. एक PHP स्क्रिप्ट जो स्क्रिप्ट
  3. एक स्क्रिप्ट

फ़ाइल ट्री कार्यान्वित:

[email protected]:/var/www/html# tree testscript/ 
testscript/ 
├── index.html 
├── testexec.php 
└── test.sh 

1. मुख्य वेबपेज:

[email protected]:/var/www/html# cat testscript/index.html 
<form action="/testscript/testexec.php"> 
    <input type="submit" value="Open Script"> 
</form> 

2. पीएचपी पृष्ठ है कि स्क्रिप्ट चलाता है और वापस मुख्य पृष्ठ पर रीडायरेक्ट:

[email protected]:/var/www/html# cat testscript/testexec.php 
<?php 
shell_exec("/var/www/html/testscript/test.sh"); 
header('Location: http://192.168.1.222/testscript/index.html?success=true'); 
?> 

3।स्क्रिप्ट:

[email protected]:/var/www/html# cat testscript/test.sh 

#!/bin/bash 

touch /tmp/testfile 
+0

यदि यह sh फ़ाइल से exe चलाने के लिए संभव है? मेरा पर्यावरण खिड़कियां ओएस है। मैं ब्राउज़र से एक्सई निष्पादित करना चाहता हूं जिसे मैंने पिछले तीन दिनों में खोजा है, मेरी मदद नहीं करता है – Karthi

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