बैश स्क्रिप्ट बहुत उपयोगी हैं और बहुत सारे प्रोग्रामिंग समय को बचा सकते हैं। तो आप सी ++ प्रोग्राम में बैश स्क्रिप्ट कैसे शुरू करते हैं? इसके अलावा यदि आप जानते हैं कि उपयोगकर्ता को सुपर-उपयोगकर्ता कैसे बनाया जाए जो भी अच्छा होगा। धन्यवाद!सी ++ प्रोग्राम से एक बैश स्क्रिप्ट कैसे चलाएं
उत्तर
system
फ़ंक्शन का उपयोग करें।
system("myfile.sh"); // myfile.sh should be chmod +x
#include <stdio.h>
#include <stdlib.h>
// ....
system("my_bash_script.sh");
क्या होगा यदि बैश स्क्रिप्ट को कुछ पाठ को tty में गूंजना था? जैसे क्या होगा यदि यह एक "बिल्ली" था? क्या सी प्रोग्राम में आउटपुट हो सकता है? –
केवल मानक अनिवार्य कार्यान्वयन निर्भर रास्ता stdlib.h
से system()
समारोह का प्रयोग है।
यदि आप जानते हैं कि उपयोगकर्ता को सुपर-उपयोगकर्ता कैसे बनें, तो यह भी अच्छा होगा।
क्या आप स्क्रिप्ट को सुपर-उपयोगकर्ता के रूप में चलाने के लिए चाहते हैं या आप सी निष्पादन योग्य के विशेषाधिकारों को ऊपर उठाना चाहते हैं? पूर्व को sudo
के साथ किया जा सकता है लेकिन sudo
का उपयोग करके आप कुछ जान सकते हैं इससे पहले कि आपको कुछ जानकारियों की आवश्यकता हो।
StackOverflow: How to execute a command and get output of command within C++?
StackOverflow: (Using fork,pipe,select): ...nobody does things the hard way any more...
इसके अलावा, अगर आप जानते हैं कि कैसे उपयोगकर्ता सुपर उपयोगकर्ता वह भी अच्छा होगा बन बनाने के लिए। धन्यवाद!
sudo। सु। chmod 04500. (setuid() & seteuid(), लेकिन उन्हें पहले से ही रूट होने की आवश्यकता है। ई..जी। chmod'ed 04 ***।)
देखभाल करें। ये "रोचक" सुरक्षा छेद खोल सकते हैं ...
आप जो कर रहे हैं उसके आधार पर, आपको रूट की आवश्यकता नहीं हो सकती है। (उदाहरण के लिए: मैं अक्सर chmod/chown/dev डिवाइस (सीरियल पोर्ट, आदि) (सूडो रूट के तहत) तो मैं उन्हें रूट के बिना अपने सॉफ़्टवेयर से उपयोग कर सकता हूं। दूसरी ओर, यह नहीं है कर्नेल मॉड्यूल लोड/अनलोडिंग करते समय बहुत अच्छी तरह से काम करें ...)
चूंकि यह एक बहुत पुराना सवाल है, और यह विधि नहीं जोड़ा गया है (system()
कॉल फ़ंक्शन से अलग) मुझे लगता है कि यह बनाना शामिल करना उपयोगी होगा सी बाइनरी के साथ खोल स्क्रिप्ट। शेल कोड file.c
स्रोत फ़ाइल के अंदर रखा जाएगा। यहाँ कोड का एक उदाहरण है:
#include <stdio.h>
#include <stdlib.h>
#define SHELLSCRIPT "\
#/bin/bash \n\
echo -e \"\" \n\
echo -e \"This is a test shell script inside C code!!\" \n\
read -p \"press <enter> to continue\" \n\
clear\
"
int main() {
system(SHELLSCRIPT);
return 0;
}
मूल रूप से, संक्षेप (यमक इरादा), हम, स्क्रिप्ट नाम को परिभाषित कर रहे, स्क्रिप्ट बाहर fleshing उन्हें दोहरे उद्धरण चिह्नों में संलग्न (उचित पलायन डालने जबकि दोहरे उद्धरण चिह्नों की अनदेखी करने में शेल कोड में), और फिर उस स्क्रिप्ट के नाम को कॉल करना, जो इस उदाहरण में फ़ंक्शन main()
में फ़ंक्शन का उपयोग कर रहा है।
- 1. बैश से पहले स्क्रिप्ट चलाएं
- 2. बैश स्क्रिप्ट से पहले कमांड कैसे चलाएं?
- 3. एक बैश स्क्रिप्ट में, बाहर परिभाषित बैश फ़ंक्शन कैसे चलाएं?
- 4. पाइथन स्क्रिप्ट से बैश स्क्रिप्ट
- 5. कैसे VBA (एक्सेल) से एक बैश स्क्रिप्ट
- 6. बैश स्क्रिप्ट से पाइथन स्क्रिप्ट
- 7. बैश स्क्रिप्ट
- 8. Emacs से एक प्रोग्राम चलाएं और आउटपुट
- 9. एक सेटूइड रूट से एक स्क्रिप्ट को कॉल करना सी प्रोग्राम - स्क्रिप्ट रूट
- 10. बैश स्क्रिप्ट- एक वैरिएबल
- 11. स्थानीय वेबपृष्ठ से एक प्रोग्राम चलाएं
- 12. एक बैश स्क्रिप्ट
- 13. लिनक्स: एक स्क्रिप्ट में एक बाइनरी चलाएं
- 14. किसी अन्य पायथन स्क्रिप्ट से एक पायथन स्क्रिप्ट कैसे चलाएं और लौटा स्टेटस कोड प्राप्त करें?
- 15. एक बैश स्क्रिप्ट
- 16. बैश स्क्रिप्ट प्रोग्राम स्थापित करने के लिए .deb बनाना
- 17. एक बैश स्क्रिप्ट
- 18. एक बैश स्क्रिप्ट में एक सी प्रोग्राम के वापसी मूल्य की जांच?
- 19. किसी अन्य से एक PowerShell स्क्रिप्ट चलाएं
- 20. वर्चुअलएएनवी एक बैश स्क्रिप्ट से initilaized
- 21. एक बैश/PHP स्क्रिप्ट से दूसरे
- 22. बैश से PHP स्क्रिप्ट निष्पादित, एक बैश चर
- 23. चर से स्क्रिप्ट कमांड कैसे चलाएं?
- 24. बैश स्क्रिप्ट
- 25. बैश स्क्रिप्ट
- 26. पृष्ठभूमि में एक पायथन स्क्रिप्ट कैसे चलाएं?
- 27. बैश स्क्रिप्ट
- 28. अनलॉक पर एक स्क्रिप्ट चलाएं?
- 29. बैश स्क्रिप्ट
- 30. बैश स्क्रिप्ट
धन्यवाद लेकिन आप इसे शामिल करना भूल गए: सिस्टम ("./ myfile.sh"); – Kredns
यह बिना काम करेगा। अगर फ़ोल्डर आपके पथ में है :) –
वर्तमान निर्देशिका '.' * आपके' $ PATH' में नहीं होनी चाहिए। –