WSL को विंडोज़ टर्मिनल में प्रोग्रामेटिक रूप से कैसे शुरू करें और कमांड चलाएं

Aug 18 2020

मैं bashएक बैच फ़ाइल से विंडोज टर्मिनल के अंदर उबंटू डब्ल्यूएसएल [शेल: ] शुरू करना चाहता हूं और एक कमांड पास करना चाहिए, जो स्टार्टअप के तुरंत बाद चलना चाहिए।

  • जब सीधे डब्ल्यूएसएल शुरू होता है, तो मैं इस -cतर्क का उपयोग करने में सक्षम हूं ; उदाहरण के लिए, निम्नलिखित WSL खोलता है और कुछ स्थानीय पोर्ट फ़ॉरवर्डिंग के साथ SSH कनेक्शन स्थापित करता है:
    bash -c "ssh -L 3306:localhost:3306 -L 5900:localhost:5900 -L 8001:localhost:8001 [email protected]"
    

मैं Windows टर्मिनल का उपयोग करके इसे कैसे प्राप्त करूंगा?

जवाब

1 suamikim Aug 18 2020 at 22:19

मुझे अब तक काम करते हुए, दो रास्ते मिले:

  1. एक समर्पित प्रोफ़ाइल बनाएँ: विकल्प भी तर्क है, जो सीधे स्टार्टअप पर खोल करने के लिए पारित कर रहे हैं, के प्रत्यक्ष उपयोग की इजाजत दी स्वीकार करता है एक अतिरिक्त "स्टार्टअप आदेश" के साथ:
    commandlinewsl.exe
    {
      "guid": "{...}",
      "hidden": false,
      "name": "Ubuntu SSH",
      "commandline": "wsl.exe ssh -L 3306:localhost:3306 -L 5900:localhost:5900 -L 8001:localhost:8001 [email protected]",
    }
    
    मैं अब एक बैच फ़ाइल के माध्यम से शेल शुरू कर सकता हूं, जो नीचे का उपयोग करके चलता है; हालाँकि, नकारात्मक पक्ष यह है कि नया प्रोफाइल विंडोज टर्मिनल के प्रोफाइल चयन मेनू में दिखाया गया है :
    wt -p "Ubuntu SSH"
    

  2. दर्रा commandlineके लिए wt:
    के रूप में विकल्प 1 में दिखाया गया है, commandlineविकल्प है जब एक बैच फ़ाइल से बुलाया लक्ष्य खोल के लिए आगे पैरामीटर, अगले कार्य के साथ शामिल कर सकते हैं:
    wt wsl.exe ssh -L 3306:localhost:3306 -L 5900:localhost:5900 -L 8001:localhost:8001 [email protected]
    
    मुझे कोई आधिकारिक ऑनलाइन संसाधन नहीं मिला जो यह बताता है कि यह क्यों काम करता है, इस उत्तर में सुझावों को समायोजित करता है, इसलिए मुझे यकीन नहीं है कि क्या यह इस तरह से काम करना चाहिए या यदि यह एक छिपी / अनजाने में विशेषता है जो भविष्य के संस्करणों में टूट सकती है।
harrymc Aug 18 2020 at 16:57

त्रुटि संदेश सही है: Windows टर्मिनल में -cपैरामीटर नहीं है ।

वाक्य रचना है:

wt [options] [command ; ]

जहाँ एकमात्र विकल्प हैं:

  -h,--help                   Print this help message and exit
  -v,--version                Display the application version
  -M,--maximized Excludes: --fullscreen
                              Launch the window maximized
  -F,--fullscreen Excludes: --maximized
                              Launch the window in fullscreen mode
  -p                          Profile
  -d                          Directory