windows - PowerShell स्क्रिप्ट कैसे चलाएं?




scripting (8)

  1. विंडोज पावरशेल लॉन्च करें, और पीएस कमांड प्रॉम्प्ट के लिए एक पल प्रतीक्षा करें
  2. निर्देशिका में नेविगेट करें जहां स्क्रिप्ट रहता है

    PS> cd C:\my_path\yada_yada\ (enter)
    
  3. स्क्रिप्ट निष्पादित करें:

    PS> .\run_import_script.ps1 (enter)
    

मैं क्या खो रहा हूँ??

या: आप PowerShell स्क्रिप्ट को cmd.exe से इस तरह चला सकते हैं:

powershell -noexit "& ""C:\my_path\yada_yada\run_import_script.ps1""" (enter)

इस ब्लॉग पोस्ट के अनुसार यहां

या आप अपने पावरहेल स्क्रिप्ट को अपने सी # ऐप से भी चला सकते हैं :-)

असीमित रूप से अपने सी # अनुप्रयोग से पावरशेल स्क्रिप्ट निष्पादित करें

मैं PowerShell स्क्रिप्ट कैसे चला सकता हूं?

  • मेरे पास myscript.ps1 नामक एक स्क्रिप्ट है
  • मेरे पास सभी आवश्यक ढांचे स्थापित हैं
  • मैंने निष्पादन नीति की बात निर्धारित की है
  • मैंने इस एमएसडीएन सहायता पृष्ठ पर दिए गए निर्देशों का पालन किया है और इसे चलाने की कोशिश कर रहा powershell.exe 'C:\my_path\yada_yada\run_import_script.ps1' (साथ या साथ में --noexit)

जो वास्तव में कुछ भी नहीं लौटाता है, सिवाय इसके कि फ़ाइल का नाम आउटपुट है। कोई त्रुटि नहीं, कोई संदेश नहीं, कुछ भी नहीं। ओह, जब मैं -noexit जोड़ता -noexit , वही होता है, लेकिन मैं PowerShell के भीतर रहता हूं और मैन्युअल रूप से बाहर निकलना पड़ता है।

Ps1 फ़ाइल को एक प्रोग्राम चलाने के लिए माना जाता है, और उस प्रोग्राम के आउटपुट पर निर्भर त्रुटि स्तर लौटाता है। लेकिन मुझे पूरा यकीन है कि मैं अभी तक वहां तक ​​नहीं पहुंच रहा हूं।

मैं क्या गलत कर रहा हूं?


Cmd (बीएटी) फ़ाइल का उपयोग करना:

@echo off
color 1F
echo.

C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Bypass -File "PrepareEnvironment.ps1"

:EOF
echo Waiting seconds
timeout /t 10 /nobreak > NUL

यदि आपको व्यवस्थापक के रूप में चलाने की आवश्यकता है:

  1. कमांड प्रॉम्प्ट पर एक शॉर्टकट बनाएं (मैंने इसे प्रशासनिक कमांड प्रॉम्प्ट नाम दिया)
  2. शॉर्टकट की गुणों को खोलें और संगतता टैब पर जाएं
  3. विशेषाधिकार स्तर अनुभाग के तहत, सुनिश्चित करें कि "इस प्रोग्राम को व्यवस्थापक के रूप में चलाएं" के बगल में स्थित चेकबॉक्स चेक किया गया है

बहुत आसान। Windows में .ps1 फ़ाइल पर राइट क्लिक करें और शैल मेनू में PowerShell के साथ रन पर क्लिक करें।


मुझे एक ही समस्या है, और मैंने कोशिश की और कोशिश की ... अंत में मैंने उपयोग किया:

powershell.exe -noexit "& 'c:\Data\ScheduledScripts\ShutdownVM.ps1'"

और इस लाइन को बैच-फ़ाइल में रखें, और यह काम करता है।


यदि आप डिफ़ॉल्ट स्क्रिप्ट निष्पादन नीति को संशोधित किए बिना स्क्रिप्ट चलाने के लिए चाहते हैं, तो आप Windows PowerShell लॉन्च करते समय बाईपास स्विच का उपयोग कर सकते हैं।

powershell [-noexit] -executionpolicy bypass -File <Filename>

यदि आपकी स्क्रिप्ट को .ps1 एक्सटेंशन के साथ नामित किया गया है और आप PowerShell विंडो में हैं, तो आप बस ./myscript.ps1 (यह मानते हुए कि फ़ाइल आपकी कार्यशील निर्देशिका में है)।

यह वैसे भी मेरे लिए PowerShell संस्करण 5.1 के साथ विंडोज 10 पर सच है, और मुझे नहीं लगता कि मैंने इसे संभव बनाने के लिए कुछ भी किया है।


PowerShell ISE , खुली स्क्रिप्ट का उपयोग करने, चलाने और अपनी स्क्रिप्ट को आमंत्रित करने का एक आसान तरीका है, फ़ंक्शन ...


  • स्क्रिप्ट का पथ दें, यानी, cmd द्वारा पथ सेटिंग:

    $> . c:\program file\prog.ps1

  • PowerShell के एंट्री पॉइंट फ़ंक्शन को चलाएं:

    उदाहरण के लिए, $> add or entry_func or main







scripting