मैं अपनी आवश्यकता को निम्न परिदृश्य के साथ व्यक्त कर सकता हूं: एक फ़ंक्शन लिखें जो मूल कमांड के रूप में चलाने के लिए एक स्ट्रिंग को स्वीकार करता है।
यह एक विचार के बहुत दूर नहीं है: यदि आप कंपनी में कहीं और से अन्य कमांड-लाइन उपयोगिताओं के साथ हस्तक्षेप कर रहे हैं जो आपको शब्दशः चलाने के लिए एक कमांड की आपूर्ति करता है। क्योंकि आप कमांड को नियंत्रित नहीं करते हैं, इसलिए आपको किसी भी मान्य कमांड को इनपुट के रूप में स्वीकार करना होगा । ये मुख्य हिचकी हैं जिन्हें मैं आसानी से दूर नहीं कर पाया हूं:
कमांड उस स्थान के साथ पथ में रहने वाले प्रोग्राम को निष्पादित कर सकता है:
$command = '"C:\Program Files\TheProg\Runit.exe" Hello';
कमांड में उनके साथ रिक्त स्थान हो सकते हैं:
$command = 'echo "hello world!"';
कमांड में सिंगल और डबल टिक दोनों हो सकते हैं:
$command = "echo `"it`'s`"";
क्या इसे पूरा करने का कोई साफ तरीका है? मैं केवल भव्य और बदसूरत वर्कअराउंड विकसित करने में सक्षम हूं, लेकिन एक स्क्रिप्टिंग भाषा के लिए मुझे लगता है कि यह मृत सरल होना चाहिए।