ከcmd የኃይል ሼል በማስጀመር ላይ። በPowerShell ውስጥ ስክሪፕቶችን መጻፍ እና ማሄድ። PowerShell ISE ምንድን ነው?

ሰላም ሁላችሁም! ዛሬ በርዕሱ ላይ አጭር ማስታወሻ ፣ Powershell እንደ አስተዳዳሪ እንዴት እንደሚከፍት።. ፓወር ሼል ከማይክሮሶፍት ኃይለኛ የፕሮግራም አወጣጥ እና የአስተዳደር ቋንቋ መሆኑን ላስታውስዎ ፣ በየዓመቱ ቁጥራቸው እየጨመረ የመጣ cmdlets እና ተግባራትን ያገኛል። በመሠረቱ, የዊንዶውስ ትዕዛዝ ጥያቄን መተካት ነው. ከዚህ በታች እሱን ለመክፈት እና ለማዋቀር የሚያስችሉዎትን ዘዴዎች እንመለከታለን.
.

የPowerShell snap-in ለመክፈት ዘዴዎች

ፓወርሼል በጥሩ ሁኔታ እያደገ ነው እና በዊንዶውስ 10 መለቀቅ ላይ ስሪት 4 ን ተቀብሏል ፣ ግን የእኛ ርዕስ የተለየ ነው። ስለዚህ የኃይል ሼል እንዴት እንደሚከፈት? በዊንዶውስ ኤክስፒ ውስጥ ከሆነ ሁሉም ነገር ቀላል ነው, ከዚያ ምንም አይደለም. ለየብቻ ስለሚሰጥ በሁሉም ተከታይ ልቀቶች ውስጥ አብሮ የተሰራ አካል ሆኖ ይመጣል። Powershell ለመክፈት በጣም ሁለንተናዊ መንገድ ጠቅ ማድረግ ነው።

Win + R እና የኃይል ሼል ያስገቡ

አስገባን በመጫን የ PowerShell ኮንሶል ይጀምራል, ብቸኛው ችግር እንደ አስተዳዳሪ አለመከፈቱ ነው. እና በውጤቱም, ብዙ ትዕዛዞች አይፈጸሙም, አስተዳዳሪውን ወክለው ይህን እንዴት ማድረግ እንደሚቻል ከዚህ በታች እንመለከታለን.

በዊንዶውስ 8.1 እና በዊንዶውስ 7 ውስጥ ዊንዶውስ ፓወርሼልን እንደ አስተዳዳሪ እንዴት እንደሚከፍት

ዊንዶውስ ፓወርሼልን በጅምር መክፈት ይችላሉ። በዊንዶውስ 8.1 ፣ ዊንዶውስ 2012 R2 ፣ ወደ የስርዓት መሳሪያዎች - ዊንዶውስ ይሂዱ እና በቀኝ ጠቅ ያድርጉ እና እንደ አስተዳዳሪ አሂድን ይምረጡ።

በዊንዶውስ 7 እና ዊንዶውስ 2008 R2 ይህን ይመስላል ጀምር > መለዋወጫዎች > ዊንዶውስ ፓወር ሼል

በተጨማሪም በተግባሩ ንጥል ውስጥ አቋራጭ መፍጠር እና በእሱ ላይ ቀኝ-ጠቅ ማድረግ እና ተገቢውን ንጥል መምረጥ ይችላሉ

PowerShell ሁል ጊዜ እንደ አስተዳዳሪ ከከፈተ አመቺ ይሆናል፣ እንተገብረው። ይህ በሁሉም የዊንዶውስ ስሪቶች ውስጥ በተመሳሳይ መንገድ ይከናወናል. የቁጥጥር ፓነልን በመክፈት ላይ

በእሱ ላይ ቀኝ-ጠቅ ያድርጉ እና ባህሪያትን ይምረጡ. በስርዓቱ ውስጥ ወደሚገኝበት ፋይል የሚወስደውን መንገድ ወዲያውኑ ማየት ይችላሉ.

"የላቀ" ቁልፍን ጠቅ ያድርጉ። ተጨማሪ ንብረቶችን ታያለህ. እንደ አስተዳዳሪ አሂድ በሚለው ሳጥን ላይ ምልክት ማድረግ ያለብዎት ቦታ.

በጣም ቀላል ነው። እርግጠኛ ነኝ አሁን ዊንዶውስ ፓወርሼልን እንዴት እንደሚከፍት ጥያቄ እንደማይኖርዎት እርግጠኛ ነኝ። ሌላው ጠቃሚ ነገር በኃይል ሼል መስኮት ውስጥ ቅርጸ-ቁምፊውን መቀየር ነው.

በዊንዶውስ 10 ውስጥ PowerShellን ከመነሻ ቁልፍ አውድ ምናሌ እንዴት እንደሚከፍት

ማይክሮሶፍት ከጊዜ ወደ ጊዜ ከትዕዛዝ መስመሩ ወደ ጠንካራ ቋንቋው (PowerShell) ትኩረት እየሰጠ ነው ፣ እና ይህ ምክንያታዊ ነው ፣ ምክንያቱም የዊንዶውስ ቤተሰብ ስርዓተ ክወናዎችን የማስተዳደር አቅሙ ከግራፊክ በይነገጽ የማይበልጥ ከሆነ ገደብ የለሽ ስለሆነ። ከዊንዶውስ 10 ስሪት 1709 ጀምሮ፣ በአውድ ምናሌው ውስጥ፣ PowerShell የተለመደውን cmd ተክቷል። በዊንዶውስ 10 ውስጥ ባለው የመነሻ ቁልፍ ላይ በቀኝ ጠቅ ያድርጉ እና ከአውድ ምናሌው ውስጥ ተገቢውን ንጥል ይምረጡ።

  1. ዊንዶውስ ፓወር ሼል
  2. ዊንዶውስ ፓወር ሼል (አስተዳዳሪ) በትክክል በዊንዶውስ 10 ውስጥ ከፍተኛ መብቶች ያለው ሁነታ ነው።

በዊንዶውስ 10 ውስጥ ፍለጋን በመጠቀም ዊንዶውስ ፓወር ሼልን ያስጀምሩ

በዊንዶውስ 10 እና አሮጌ ስሪቶች ውስጥ, መደበኛ ፍለጋን በመጠቀም የ PowerShell ሼልን ማግኘት ይችላሉ; ከጀምር አዝራሩ ቀጥሎ ያለውን የአጉሊ መነጽር አዶን ጠቅ ያድርጉ። በሚከፈተው የፍለጋ ቅጽ ውስጥ PowerShell የሚለውን ቃል ያስገቡ። ሁሉንም አማራጮች ይፈልጉዎታል, ከነሱ መካከል ዛጎሉን ያገኛሉ. በእሱ ላይ በቀኝ ጠቅ ካደረጉት እንደ አስተዳዳሪ ሊከፍቱት ይችላሉ.

በዊንዶውስ 10 ውስጥ ካለው የጀምር ምናሌ ዊንዶውስ ፓወር ሼልን በማስጀመር ላይ

PowerShellን ከጀምር ምናሌ ለመክፈት ይክፈቱት እና ዊንዶውስ ፓወር ሼልን ይፈልጉ በአቃፊ መልክ ይሆናል፣ ይክፈቱት እና ተገቢውን ስሪት ያሂዱ።

በቀኝ ጠቅ ካደረጉ የ Vershel shellን እንደ አስተዳዳሪ ከአስተዳዳሪ መብቶች ጋር ማሄድ ይችላሉ።

ተጨማሪ እና አጠቃላይ የሼል ማስነሻ ዘዴዎች

ከማይክሮሶፍት ኃይለኛ ቋንቋ ያለው ሼል ለመክፈት በጣም ልዩ ዘዴዎችም አሉ። በጣም ብልሹ የሆነው በቀላሉ የሚተገበረውን ፋይል ማግኘት እና በስርዓቱ ላይ ካለው ቦታ በቀጥታ ማስኬድ ነው። በሚከተለው መንገድ ወደ የእርስዎ ዊንዶውስ 10 እንሂድ፡-

C:\ተጠቃሚዎች\username\AppData\Roaming\Microsoft\Windows\ Start Menu\Programs\Windows PowerShell

በውጤቱም, በጀምር ምናሌ ውስጥ የሚገኙትን አቋራጮች የያዘ አቃፊ ያያሉ, እነሱን ማስጀመር ይችላሉ.

እንዲሁም በመንገዱ ዳር የሚገኘውን ኦርጅናሉን የሚተገበር ፋይል ማሄድ ይችላሉ።

C: \ Windows \ System32 \\ WindowsPowerShell \ v1.0

እና በእሱ ላይ ቀኝ-ጠቅ በማድረግ, እንደ አስተዳዳሪ ማውረድ ይችላሉ, ከፍተኛ መብቶች.

እንዲሁም ዊንዶውስ ፓወር ሼልን ከትዕዛዝ መስመሩ መስኮት ማስጀመር ይችላሉ, ይህንን ለማድረግ በቀላሉ አስማታዊውን ቃል ያስገቡ እና አስገባን ይጫኑ.

ደህና፣ ከ"Task Manager" snap-in አዲስ ተግባር የማስጀመር ዘዴን ላስታውስዎ። "Task Manager" ን ክፈት, የምናሌ ንጥል ይምረጡ "ፋይል - አዲስ ተግባር አሂድ"

በሚታየው መስኮት ውስጥ PowerShell ን ያስገቡ.

ደህና ፣ ለእኔ የሚያውቀው የመጨረሻው ዘዴ PowerShell ን በዊንዶውስ 10 ኤክስፕሎረር ማስጀመር ነው ፣ ይህንን ለማድረግ ኤክስፕሎረርን ይክፈቱ ፣ “ፋይል - ዊንዶውስ ፓወር ሼልን ያስጀምሩ” የሚለውን ምናሌ ይምረጡ ፣ ሁለቱም ሁነታዎች ይኖራሉ ።

PowerShell ISE ምንድን ነው?

የPowerShell ISE አቋራጭ በሁሉም ቦታ እንዳለ አስተውለህ ይሆናል፣ እና ምን እንደሆነ ማወቅ ትፈልጋለህ። በአጭሩ ይህ ማይክሮሶፍት የሚያቀርብልዎትን ሁሉንም ዓይነት cmdlets በመጠቀም በPowerShell ውስጥ ስክሪፕቶችን እና ስክሪፕቶችን የሚጽፉበት ልዩ ሼል ነው።

የ Powershell ቅርጸ-ቁምፊን መቀየር በጣም ቀላል ነው, በንብረቶቹ ውስጥ ወደ ቅርጸ-ቁምፊ ትር ይሂዱ, መጠኑን ከ 5 ወደ 72 ማዘጋጀት ይችላሉ.

እንዲሁም ከመገልገያ መስኮቱ እራሱ ወደ ንብረቶች መድረስ ይችላሉ ፣ በላይኛው ግራ ጥግ ላይ ያለውን አዶ ጠቅ ያድርጉ እና ንብረቶችን ይምረጡ

እዚህ የቅርጸ-ቁምፊ ቅንጅቶች ትንሽ ለየት ያሉ ናቸው, እና ሲቀየሩ, የኮንሶል መጠኑም ይለወጣል.

በ Colors ትሩ ላይ የቅርጸ ቁምፊውን ቀለም በፓወርሼል እና በመስኮቱ ውስጥ ማዘጋጀት ይችላሉ. ጥቁር በማድረግ, ለምሳሌ, እንደ ትዕዛዝ መስመር.

ንቁ የኮንሶል ተጠቃሚ ከሆንክ የቋት መጠኑን ወደ 50 ትዕዛዞች ሳይሆን ቢያንስ 100 እንዲሆን እመክራለሁ።

ስለ ትኩረትዎ እናመሰግናለን። እነዚህ በዊንዶውስ ውስጥ የኃይል ሼል ኮንሶል ለመክፈት ዘዴዎች ናቸው. የጣቢያ ቁሳቁስ

ዊንዶውስ 7 እና አገልጋይ 2008 ከወጡ ከአንድ አመት በላይ አልፈዋል።

ፕሮግራመሮች፣ የስርዓት አስተዳዳሪዎች እና የላቁ ተጠቃሚዎች ከትዕዛዝ መስመሩ ጋር በሚመሳሰል መልኩ ለሰማያዊው መስኮት ብዙ አጠቃቀሞችን አግኝተዋል።

አብዛኛዎቹ ጀማሪ ተጠቃሚዎች PowerShell (PS) ምን እንደሆነ እንኳን አያውቁም።

ነገር ግን የPowerShell ስክሪፕቶች 100% የሚጠጉ ድርጊቶችን እና ስክሪፕቶችን በስርዓተ ክወናው ውስጥ በትእዛዝ መስመር እና በግራፊክ በይነገጽ በኩል እንዲሰሩ ያስችሉዎታል።

ስክሪፕቶችን (firmware) ለመፍጠር እና ለማሄድ ተግባር የበለጠ ትኩረት በመስጠት የዚህን ፕሮግራም ዋና ችሎታዎች እናውቅ።

በሩሲያኛ ጨምሮ ለፕሮግራሙ ስፍር ቁጥር የሌላቸው መመሪያዎች እና ሰነዶች አሉ. የጽሁፉ ዓላማ- ለተጠቃሚው የፅንሰ-ሀሳብ እውቀትን መስጠት ፣ ወቅታዊ አምጣ, ነገር ግን አስተርጓሚውን ማወቅ እና በውስጡ ያሉትን የስክሪፕት አፈፃፀሞች በቅርበት ማወቅ ጠቃሚ ነው, ሁሉም ሰው ለራሱ ይወስናል.

Windows PowerShell ምንድን ነው?

PowerShell- በራሱ የስክሪፕት ቋንቋ የታጠቁ በ NET Framework ላይ የተመሰረተ አስተርጓሚ።

የመጀመሪያው በጽሑፍ ሁነታ ይሰራል ማለት ነው፡ ትዕዛዙን ያስገባሉ፣ ያሂዱት እና በስክሪኑ ላይ የአፈፃፀሙን ውጤት ያያሉ።

በ MS-DOS እና የቆዩ የ UNIX ስሪቶች ውስጥ እንደነበረው.

ሁለተኛው የስርዓቶችን፣ አፕሊኬሽኖችን፣ ሂደቶችን እና ተዛማጅ አገልግሎቶችን በአስተዳዳሪዎች እና ተራ ተጠቃሚዎች አስተዳደር እና ጥገናን በእጅጉ ያቃልላል፣ ያፋጥናል እና አውቶማቲክ ያደርጋል።

ከሌሎች አስተርጓሚዎች ጋር ሲነጻጸር. PS የተለየ ነው-

  • ጋር ውህደት - የፕሮግራም ኮድን በውስጣቸው በማስተዋወቅ ኃይለኛ ስክሪፕቶችን እንዲፈጥሩ ይፈቅድልዎታል ፣
  • ሁሉም የተመለሱት መረጃዎች እቃዎች ናቸው እንጂ የጽሁፍ/የሕብረቁምፊ ውሂብ አይደሉም፣ይህ ማለት ወደ ሌሎች ስክሪፕቶች ይተላለፋሉ እና በማንኛውም መንገድ ይከናወናሉ ማለት ነው።

PowerShell ስሪት 2የሚከተሉት ችሎታዎች አሉት ፣ አንዳንዶቹን በዝርዝር እንመልከታቸው፡-

  • እንደ cmdlets ትዕዛዞችን የመወከል ችሎታ- በአስተርጓሚው ውስጥ ተጀምረዋል, አለበለዚያ ትዕዛዙ በተለየ ሂደት ውስጥ ይከናወናል.
  • ማጓጓዣዎችን መጠቀም- አወቃቀራቸውን እና አይነታቸውን እየጠበቁ መረጃን ከአንድ ትዕዛዝ ወደ ሌላ ለማስተላለፍ የተነደፉ ናቸው.
  • የተቀናጀ የብዝሃ-ዥረት ውሂብ ማስተላለፍቅድሚያ በመስጠት እና ግንኙነት ዳግም መጀመር ጋር በአውታረ መረብ ላይ.
  • የአቀማመጥ እና የተሰየሙ መለኪያዎች ድጋፍ.
  • የጀርባ ሥራ- የማይመሳሰል የትዕዛዝ ጥሪ እና በሩቅ ማሽኖች ላይ ስክሪፕቶችን ማስጀመር።
  • ከሩቅ ደንበኞች ጋር የተገደቡ ክፍለ ጊዜዎችን በማዘጋጀት ላይእና በእነሱ ላይ የሩጫ ስክሪፕቶችን.
  • ሞጁሎች- እራሳቸውን ሲችሉ እና የሞጁሉን አከባቢ ሳይነኩ በራሳቸው መያዣ ውስጥ ሲተገበሩ ስክሪፕቶችን የማደራጀት መንገድ።
  • የስህተት ተቆጣጣሪ መገኘት.
  • ለቋንቋው ግራፊክ አካባቢ: አገባብ፣ አራሚ፣ ማድመቅ፣ ራስ-ሰር ትዕዛዝ ማጠናቀቅ ከዩኒኮድ እና ዕልባቶች ጋር።
  • የመስመሮች መግቻ ነጥቦችን ማከልስክሪፕቱን ለማረም ትዕዛዞች፣ ኦፕሬሽኖች እና ተለዋዋጮች።
  • አግድ እና የመስመር ላይ አስተያየቶችን።
  • ለአንዳንድ cmdlets ተለዋጭ ስሞችን ለመፍጠር ድጋፍ, በአፈፃፀም ጊዜ ወደ ተራ ትዕዛዞች የሚለወጡ.
  • ውስን ክፍለ ጊዜዎችን መፍጠር ፣በጥብቅ የተገለጹ የትእዛዞችን ዝርዝር እና ሌሎችንም መፈጸም የሚችሉበት።

የPowerShell ምንጭ ኮድ ለሁሉም ሰው ይገኛል።የትእዛዝ መስመር አስተርጓሚውን ተግባር ለማሳደግ ማንኛውም የማህበረሰብ አባል በነፃነት የራሱን ቅጥያ መፍጠር ይችላል።

ያለ ምንም የፕሮግራም ችሎታ የተቀናጀ የስክሪፕት ቋንቋን መማር መጀመር ይችላሉ።

ውስብስብ ሁኔታን መፍጠር መቻል የማይመስል ነገር ነው ፣ ግን ሁሉም ሰው ማለት ይቻላል የጥንታዊ እርምጃዎችን ቅደም ተከተል ማከናወን ይችላል።

ምንም እንኳን የPowerShell መሰረታዊ ፅንሰ-ሀሳቦችን ሳያውቁ በትዕዛዝ አስተርጓሚ መስኮት ውስጥ ማንኛውንም ነገር ማድረግ አይችሉም ማለት አይቻልም። በነሱ እንጀምር።

Cmdlets

Cmdlets- ልዩ የ PS ትዕዛዞች ፣ ከኋላው የተለያዩ ተግባራት ተደብቀዋል። በአስተርጓሚው ውስጥ የተገነቡት ትዕዛዞች በግሥ-ስም መርህ ላይ ይተገበራሉ, ለምሳሌ, Get-Process (የሂደቶችን ዝርዝር ማግኘት). ይህ መፍትሔ የትዕዛዙን ይዘት ከስሙ (በእንግሊዘኛ) ብቻ እንዲገነዘቡ ያስችልዎታል.

አንዳንድ cmdlets አወቃቀራቸውን እና አይነታቸውን በሚጠብቁበት ጊዜ መረጃን መቀበል/ማስተላለፍ ይደግፋሉ። ይህ በማጓጓዣ መርህ ላይ ይሰራል (ይህ በሚቀጥለው ክፍል ውስጥ ይብራራል). ምንም ይሁን ምን cmdlets ዕቃዎቹን በቅደም ተከተል ያካሂዳሉ እና ያስኬዳሉ።

cmdlets ለመተግበር በማንኛውም የ NET ቋንቋ የተፈጠሩ ማንኛቸውም የሚደገፉ .NET APIs መጠቀም ይቻላል።

ስለዚህ, ተጠቃሚው የፕሮግራሙን ልዩ ተግባራት መዳረሻ ይሰጠዋል.

Cmdlets የሚፈለገውን መረጃ በቀጥታ ወይም በልዩ ዱካዎች (የመንጃ ፊደሎች እና ማውጫ ዱካዎች) ማግኘት ይችላሉ።

cmdlets ን በመጠቀም ከፋይል ስርዓት እና የምስክር ወረቀት ማከማቻ ዕቃዎች ፣ የተጫኑ መተግበሪያዎች እና አገልግሎቶች ጋር መስራት ይችላሉ።

ማጓጓዣ

በጣም ጥንታዊ ያልሆኑ ስክሪፕቶችን ሲፈጥሩ ወይም በስክሪፕቱ ምክንያት በተገኙ መረጃዎች ማንኛውንም ክወናዎችን ለማከናወን አንዳንድ ጊዜ አንዳንድ እርምጃዎችን ማከናወን አለብዎት።

ለዚህ ማጓጓዣ አለ. እንደ UNIX ፣ የአንድ cmdlet ውፅዓት ወደ ሌላ ግቤት ውስጥ በማለፍ ትዕዛዞችን ያጣምራል ፣ ሳይለወጥ ፣ አይነቱን ይጠብቃል።

በዚህ አጋጣሚ የመረጃ መያዣ ወይም ቁምፊ በቁምፊ መተንተን አያስፈልግም.

የተላለፈው መረጃ ተግባርንም ሊያካትት ይችላል።የተዋሃዱ ትዕዛዞችን ስራ ከጨረሱ በኋላ, መረጃን ወደ ጽሁፍ መልክ የመቀየር ተግባር (መረጃ ወደ ሕብረቁምፊዎች መለወጥ) የጽሑፍ ቅርጸትን በመጠቀም ይባላል.

ስክሪፕቶች

ምንም እንኳን ዛጎሉ ብዙ ድርጊቶችን በራስ-ሰር እንዲሰሩ ቢፈቅድልዎትም, ትዕዛዞችን እራስዎ ማስገባት ያስፈልግዎታል, ይህ በጣም ምቹ አይደለም.

በተለይም ተመሳሳይ ክዋኔዎች በተደጋጋሚ መከናወን አለባቸው.

እና ያለ ሰው ምክንያት ማድረግ አይችሉም: ስህተቶች፣ ስህተቶች፣ የኮድ መስመሮችን በሚጽፉበት ጊዜ በአጋጣሚ ቁልፎችን መምታት፣ መስመርን ማስተካከል ወይም እንደገና መተየብ ለተጠቃሚ ምቹ የሆነ አመለካከትን ይጠይቃል።

ነጠላ የድርጊት ሰንሰለቶችን ለማከናወን ፣PS ስክሪፕቶችን ተግባራዊ አድርጓል - የጽሑፍ ፋይሎች ለአስተርጓሚው የሚረዱ ቅደም ተከተሎች በውስጣቸው ያሉ ትዕዛዞች።

በPowerShell ውስጥ ያሉ ስክሪፕቶች በፒሲው ላይ ያለውን ስራ እና ጥገናውን የበለጠ ያቃልላሉ እና በራስ ሰር ያዘጋጃሉ፣ በተለይም ስክሪፕቱ ቅርንጫፎችን፣ ሁኔታዎችን፣ ሎጂካዊ ስራዎችን እና loopsን ከያዘ።

እዚህ ግን “የሚያብረቀርቅ ሁሉ ወርቅ አይደለም”፡ የእራስዎን ስክሪፕት መጻፍ ወይም የተዘጋጀውን መስቀል (በጥቂቱ ከራስዎ አላማ ጋር ቢስማማም) በቀላሉ አይሰራም።

ከገባማይክሮሶፍትተፈቅዶለታል ምንም ያህል ችግር ቢፈጠር ስክሪፕቶችን ሠራPowerShell ፣ ለራስ ወዳድነት ወይም ለክፉ ዓላማዎች በአጭበርባሪዎች እና በክፉ ምኞቶች የተፃፈ።

በዊንዶውስ ፒኤስ ላይ ለመስራት የማስነሻ መቆጣጠሪያውን ማለፍ አለብዎት።

ካልተሳካ እና ስክሪፕቱ መፈፀም ካለበት ለማክሮዎች ደህንነት ተጠያቂ የሆኑትን ነገሮች ውቅር መቀየር አለብዎት.

ስክሪፕቶችን ከመጠቀምዎ በፊት

ቪቢኤስን በሚጠቀሙበት ጊዜ ብዙ ችግሮች ይነሳሉ ይህም የPowerShell ገንቢዎች የተጠቃሚ ስክሪፕት ጥያቄዎችን ለማርካት ወይም ከስርዓተ ክወናው የደህንነት ደረጃ ጋር የተያያዙ ችግሮችን ለመፍታት የስክሪፕት ደህንነት ካልተቀነሰ ሙሉ በሙሉ አስወግደዋል።

የወረደውን ስክሪፕት በተጠቃሚ ማሽን ላይ ማስኬድ ተንኮል አዘል ሶፍትዌሮችን ለማሰራጨት ወይም የግል መረጃን በአጥቂዎች ለመስረቅ ቀላል እና ውጤታማ አማራጭ ነው።

ሁሉም ነገር የሚሆነው የስክሪፕት ፋይሉን ይዘት ካለማወቅ የተነሳ ነው (ps1)እና የሌሎችን ስራ ወጪ ችግሮቻቸውን በፍጥነት የመፍታት ፍላጎት. የስክሪፕት አፈጻጸምን የደህንነት ደረጃ የሚቆጣጠሩ ነገሮች ስክሪፕቱን ለማስኬድ የማይቻልበት አካባቢ ይፈጥራሉ.

ሆን ተብሎ የማክሮዎችን ማስኬድ የሚከሰተው የደህንነት ደረጃን ከቀየሩ በኋላ ነው፣ ተጠቃሚው ጉዞውን ከሰጠ፣ የሚያደርገውን ተረድቶ እና በ*.ps1 ፋይል ውስጥ ያለውን ነገር በትክክል ካወቀ።

የደህንነት ውቅር የራሳቸውን ስክሪፕቶች ለመተግበር እና ለማሄድ ለሚያስፈልጋቸው ሰዎች የማይመች ስለሆነ አወቃቀሩን መቀየር ይቻላል.

እዚህ ወይም ከፓወር ሼል ጋር ለመስራት ቀዳዳዎችን የመክፈት ችሎታ እና በጥበብ መካከል ጥበቃን በትንሹ መቀነስ ወይም በጥበብ መንቀሳቀስ ይችላሉ።

ዛጎሉ ሶስት የደህንነት ደረጃዎች አሉት.

  • የps1 ቅጥያ ያላቸው ፋይሎች በስርዓቱ አይታወቁም።ሊተገበር የሚችል እና የማይታወቅ ወይም ጽሑፍ ተብለው የተሰየሙ (በሁለት ጊዜ ጠቅ በማድረግ በኮምፒዩተር ላይ ጥቅም ላይ የዋለውን የጽሑፍ አርታኢ ውስጥ ይከፍታሉ);
  • ዛጎሉ ሙሉ መንገዳቸውን ከገለጹ በኋላ ስክሪፕቶችን እንዲፈጽሙ ይፈቅድልዎታል, አሁን ባለው ማውጫ ውስጥ ያሉ የስክሪፕት ፋይሎች አልተፈለጉም, አሁን ባለው ማውጫ ውስጥ የሚገኙትን ማክሮዎችን ለማስፈጸም የማይቻል ያደርገዋል;
  • አብሮ የተሰራውን የማስፈጸሚያ ፖሊሲ ስክሪፕት በማሄድ ላይ, የሚፈለገውን ወደ የተፈቀደላቸው ስክሪፕቶች ዝርዝር የመጨመር ኃላፊነት አለበት።

አወቃቀሩን ስለመቀየር እንኳን አያስቡ, ቢያንስ ወደ ሁለተኛው ደረጃ ዝቅ ማድረግ, እራስዎን ከመሠረታዊ ነገሮች ጋር ሳያውቁPowerShellቢያንስ የ* ይዘቶችን በደንብ መረዳት እስክትጀምር ድረስ።ps1.

ስክሪፕቶች በአጋጣሚ እንዳይፈጸሙ ለመከላከል የተፈጠረ የአፈጻጸም ፖሊሲ ጽንሰ-ሀሳብም አለ። አምስት የማስጀመሪያ መመሪያ ቅንብሮች አሉ፡

  • ውስን -በነባሪነት ተጭኗል ፣ በማይክሮሶፍት የተፈረሙ ስክሪፕቶች ብቻ ይከናወናሉ ፣ ይህም ስለ ኮምፒዩተሩ ሃርድዌር እና ሶፍትዌር ዛጎል መረጃ እንዲያገኙ ያስችልዎታል ።
  • የተሰረዙ ፋይሎች ፊርማ መኖር- ሁሉንም ማክሮዎች ማከናወን ይችላሉ ፣ ግን በፖስታ የተላኩ ፋይሎች መፈረም አለባቸው ፣
  • በታመነ ምንጭ በዲጂታል የተፈረመ- ሁሉም የተፈረሙ ስክሪፕቶች ይፈጸማሉ;
  • ያልተገደበ- ማንኛውንም ማክሮዎችን ያስጀምሩ;
  • ማለፍ- በሼል ውስጥ የቀረበውን ከመጠቀም ይልቅ የራሳቸውን የደህንነት ስርዓት ለሚፈጥሩ ፕሮግራመሮች የታሰቡ ናቸው.

“Get-ExecutionPolicy” የሚለውን ትዕዛዝ በመጠቀም የአፈጻጸም ፖሊሲውን አሁን ያለውን ሁኔታ ማረጋገጥ ይችላሉ።የደህንነት ፖሊሲው ምንም ይሁን ምን ተጠቃሚው ለማስፈጸም በቂ ልዩ መብቶች የሉትም የሚሉ ትዕዛዞችን የያዘ ስክሪፕት ማሄድ አይችልም።

PowerShellን በማስጀመር ላይ

ከቲዎሪ ወደ ልምምድ የምንሸጋገርበት ጊዜ ነው። ስለዚህ, ስክሪፕቶችን ለማስፈጸም ዲጂታል ፊርማ ማግኘት አለብዎት ወይም (ሁለተኛው አማራጭ ቀላል ነው).

የPowerShell መስኮት ለመክፈት ብዙ መንገዶች አሉ።

በሁለት መልኩ ቀርቧል፡-

  • ክላሲክ ኮንሶል;

  • PowerShell ISE - ለትሮች, አገባብ, አውድ እርዳታ, አውድ እና ዋና ምናሌዎች ድጋፍን ይጨምራል, ይህም በአስተርጓሚ ውስጥ መስራትን በእጅጉ ያመቻቻል.

ጀምር

ወደ PS ለመደወል ቀላሉ መንገድ በጀምር በኩል ነው።

  1. ምናሌውን ይክፈቱ(በዊንዶውስ 7 ውስጥ "ሁሉም ፕሮግራሞች" የሚለውን ጠቅ ያድርጉ).
  2. ወደ Windows PowerShell ማውጫ ይሂዱእና የሚፈልጉትን አዶ ጠቅ ያድርጉ።

ሩዝ. 4 - PS በ Start ን ያስጀምሩ

እንዲሁም በ PS በኩል መደወል ይችላሉ። የተቀናጀ የፍለጋ ስርዓት.

የትእዛዝ አስተርጓሚ

መደበኛ ያልሆኑ እና ፈጣን የማስጀመሪያ ዘዴዎችን ለሚወዱ፣ Run መስኮቱን ይጠቀሙ። በ Start ውስጥ ተመሳሳይ ስም ያለው አዝራር እና የቁልፍ ጥምር Win + R ይከፈታል.

በንግግር ሳጥን ውስጥ እንጽፋለን "የኃይል ሼል"እና "Enter" ን ይጫኑ.

Win+X

በዊንዶውስ 10, PS ከዊንክስ ሜኑ ሊጠራ ይችላል. እውነታው ግን በነባሪነት ትዕዛዙን ጠቅ በማድረግ ነው "የትእዛዝ መስመር" CMD ን ይክፈቱ። በPowerShell ሊተካ ይችላል።

የተግባር አሞሌውን "Properties" ይክፈቱ, በ "ዳሰሳ" ትር ውስጥ, ብቸኛው አማራጭ አጠገብ ምልክት ያድርጉ እና ቅንብሮቹን ያስቀምጡ.

በእሱ ውስጥ "powershell" በመጻፍ ወይም በመንገዱ ላይ ያለውን ተፈጻሚ ፋይል በማስኬድ ወደ PowerShell በትእዛዝ መስመር በኩል መደወል ይችላሉ: %WINDIR%\ ስርዓት32 WindowsPowerShell\v1.0 ለ32-ቢት ሲስተሞች እና በ%WINDIR%\ syswow64 WindowsPowerShell\v1.0 ለማንኛውም እትም ባለ 64-ቢት ዊንዶውስ።

ሩዝ. 8 - ሊተገበር የሚችል ፋይል ከተከማቸበት ማውጫ ውስጥ PSን ያሂዱ

የደህንነት ፖሊሲ በማዘጋጀት ላይ

ብዙ አልቀረም።- PowerShell ስክሪፕቶችን እንዲፈጽም ፍቀድ። "Set-ExecutionPolicy RemoteSigned" የሚለውን ትዕዛዝ አስገባ እና "Y" ን ተጫን.

ይኼው ነው። አሁን ማንኛውንም cmdlets እና ስክሪፕቶችን ማሄድ ይችላሉ። ለምሳሌ "Get-Process" ን በማስፈጸም የንቁ ሂደቶችን ዝርዝር ለማሳየት እንሞክር.

የሩጫ ስክሪፕቶች

በማንኛውም ውስጥ ስክሪፕቶችን መፍጠር ይችላሉ (ከዊን ጋር መጣበቅ ወይም ተመሳሳይ ነገር ከአገባብ ወይም ከማረጋገጫ ድጋፍ ጋር) ወይም በPowerShell ISE ፕሮግራም ውስጥ።

የኋለኛው ለ cmdlets ምቹ መዳረሻ ይሰጣል ፣ ስክሪፕቶችን የማሄድ ፣ የማረም እና የማስቀመጥ ችሎታ።

የመጀመሪያ ስክሪፕትህን እንደጻፍክ እናስብ (ይህ የአሂድ ሂደቶችን ዝርዝር ለማግኘት ነው)፣ በ "ፋይል" ሜኑ በኩል አስቀመጥክ እና እሱን ማስኬድ አለብህ። ይህ በሶስት መንገዶች ይከናወናል.

1 ወደ ስክሪፕቱ ሙሉውን መንገድ በPowerShell (ወይም ISE);

ሩዝ. 13 - ከPowerShell ISE መስኮት ላይ ስክሪፕቶችን ማስኬድ

አስፈላጊወደ ፋይሉ በሚወስደው መንገድ ላይ ምንም ክፍተቶች እንዳይኖሩ!

PowerShell- በአገልጋይ 2008 እና ከዚያ በላይ መደበኛ ስራዎችን ለማቃለል ኃይለኛ መሳሪያ። የPowerShell ጠቃሚ ጠቀሜታ ስክሪፕቶች እና ተገኝነት ነው። የፕሮግራሙ ስሪት በግራፊክ በይነገጽ PS ISE. በውስጡ ያሉት ትዕዛዞች በ cmdlets መልክ ቀርበዋል, ይህም እራስዎን ከሼል ጋር በደንብ እንዲያውቁ እና የእያንዳንዱን ትዕዛዝ ትርጉም እንዲረዱ ያስችልዎታል. የደህንነት ፖሊሲው ጀማሪ ኮምፒዩተሩን እንዲጎዳ አይፈቅድም።ካልታወቁ ምንጮች የተቀበሏቸው ስክሪፕቶች እና የማረሚያ ሁነታ የራስዎን cmdlets መፍጠር ፣ ተግባራት እና የስህተት አያያዝ ዘዴ ለፕሮግራም አውጪዎች እና አስተዳዳሪዎች ያልተገደበ እድሎችን ይከፍታል።

ስክሪፕቱን ለማስኬድ ብዙ የተለያዩ መንገዶች አሉ ፣ ዋናዎቹ ከዚህ በታች ቀርበዋል ።

  1. PowerShellን ያስጀምሩእና በውስጡ ያለውን ስክሪፕት ያሂዱ (ወደ ፋይሉ የሚወስደውን መንገድ እና የፋይል ስም ያስገቡ ፣ ለምሳሌ ፣ እንደዚህ ያለ: C: \ Scripts \ test.ps1 ፣ ወይም በ cd C: \Scripts ትእዛዝ ወደ ስክሪፕት አቃፊ ይሂዱ እና ያሂዱ በትእዛዙ \ test.ps1) ቅርፊቱ በብዙ መንገዶች ሊገኝ እና ሊጀምር ይችላል. አንዱ መንገድ በጀምር ሜኑ በኩል ነው። ለዊንዶውስ 7 - ወደ "ሁሉም ፕሮግራሞች" - "መለዋወጫዎች" - "ዊንዶውስ ፓወር ሼል" መሄድ እና "ዊንዶውስ ፓወር ሼል" ን ማስጀመር ያስፈልግዎታል. ለዊንዶውስ 10 - "W" በሚለው ፊደል ቡድኑን ማግኘት ያስፈልግዎታል እና በውስጡም "Windows PowerShell" ያገኛሉ.
  2. "Windows PowerShell ISE" ን ያስጀምሩፕሮግራም ነው - የPowerShell ስክሪፕቶችን እንዲያርትዑ እና እንዲያርሙ የሚያስችልዎ የእድገት አካባቢ፣ይህም በነባሪ ከፓወር ሼል እራሱ ጋር ይገኛል። እሱን ከጀመርክ በኋላ “ክፈት” የሚለውን ቁልፍ መጫን ብቻ ወይም ወደ ፋይሉ - ሜኑ ክፈት እና ተፈላጊውን ስክሪፕት ምረጥ፣ ከዚያ F5 ወይም “Run Script” የሚለውን ቁልፍ ተጫን የ PowerShell ሼል - በጀምር ምናሌ ውስጥ.
  3. መደበኛ የትእዛዝ መስመርን ያስጀምሩእና በውስጡ ጻፍ፡-
    powershell - ፋይል<имя_скрипта> (ለምሳሌ powershell -file myscript.ps1)

ከዚህ ቀደም የPowerShell ስክሪፕቶችን ካላስኬዱ የሚከተለውን መልእክት ሊደርስዎት ይችላል፡- ፋይል ማውረድ አልተቻለም<имя_скрипта>ለዚህ ሥርዓት ስክሪፕት መፈጸም የተከለከለ ስለሆነ። ለበለጠ መረጃ "get-help about_signing" ብለው ይተይቡ። ይህ የሆነበት ምክንያት ለደህንነት ሲባል እና ተንኮል-አዘል ኮድ በአጋጣሚ እንዳይፈፀም ለመከላከል ሁሉም ስክሪፕቶች በዲጂታል ፊርማ መፈረም አለባቸው።

ያልተፈረመ የPowerShell ስክሪፕት እንዴት እንዲፈፀም መፍቀድ ይቻላል?

1. በPowerShell ውስጥስክሪፕቱን ከማሄድዎ በፊት፣ ለአሁኑ የሼል ክፍለ ጊዜ ያልተፈረሙ ስክሪፕቶች እንዲፈጸሙ ለመፍቀድ ትዕዛዙን ያስኪዱ፡-

Set-ExecutionPolicy Remote Signed -Scope Process

2. ጅምር ላይ ከመደበኛው የትእዛዝ መስመር-executionpolicy መለኪያን ተጠቀም፣ i.e. ስክሪፕቱን እንደሚከተለው ያሂዱ፡-

<имя_скрипта>

ሁለቱም ዘዴዎች ፖሊሲውን ለአሁኑ ክፍለ ጊዜ ብቻ ያዘጋጃሉ፣ በመዝገብ ውስጥ የተፃፉ የPowerShell ስክሪፕቶችን የማስፈጸሚያ የደህንነት ፖሊሲ ግን አይቀየርም እና ተመሳሳይ እንደሆነ ይቆያል። የስክሪፕት ማስፈጸሚያ ደህንነት ፖሊሲን ወደ “ቋሚ” ለመቀየር ከፈለጉ ይህንን ዘዴ ይጠቀሙ፡-

3. ማስጀመር ለዘላለም ፍቀድ: PowerShellን እንደ አስተዳዳሪ ያስጀምሩ እና ትዕዛዙን ያስኪዱ፡-

Set-ExecutionPolicy የርቀት ምልክት ተፈርሟል

ማስታወሻ፡-ስክሪፕቱ ከበይነመረቡ የወረደ ከሆነ ጅምርን ለማረጋገጥ የሚቀርብን ጥያቄ ለማስቀረት ከርቀት ምልክት ይልቅ Bypass መጠቀም ያስፈልግዎታል - ማንኛውንም ጥያቄዎችን እና ማስጠንቀቂያዎችን ሙሉ በሙሉ ማሰናከል።

የPowerShell ስክሪፕት ከበስተጀርባ እንዴት እንደሚሰራ?

ይህንን ለማድረግ የማስጀመሪያውን መለኪያ ብቻ ይጠቀሙ -WindowStyle, የሚከተሉትን እሴቶች ሊወስድ ይችላል: መደበኛ, አነስተኛ, ከፍተኛ እና የተደበቀ. ስለዚህ፣ ያልተፈረመ ስክሪፕት ከበስተጀርባ ለማሄድ ትዕዛዙን ማስኬድ ያስፈልግዎታል፡-

powershell -executionpolicy RemoteSigned -WindowStyle Hidden -file<имя_скрипта>

ስክሪፕቱ ምንም አይነት ጥያቄ እንዳይጠይቅ ከፈለግክ -NonInteractive ማከል ትችላለህ። ስለዚህ, ስክሪፕቱ በተጠቃሚው ሳይታወቅ ይከናወናል. ይህንን ዘዴ ሲጠቀሙ ይጠንቀቁ.

የPowerShell ስክሪፕት ከግቤቶች ጋር በማሄድ ላይ

ትክክለኛው ጅምር ልክ እንደ መደበኛ ፕሮግራም ወይም የሌሊት ወፍ ፋይል ከግቤቶች ጋር እንደጀመሩ መደረግ አለበት። ለምሳሌ፣ ከትዕዛዝ መስመሩ ግቤቶች ያለው ስክሪፕት ለማስኬድ የሚከተለውን ትዕዛዝ መፃፍ ይችላሉ።

powershell -executionpolicy RemoteSigned -file<имя_скрипта>param1 param2 "ሌላ የጽሑፍ መለኪያ"

በስክሪፕቱ ራሱ እነዚህን መለኪያዎች ማግኘት ይችላሉ-

ፓራም ($ var1፣ $var2፣ $var3) አስተጋባ $var1፣ $var2፣ $var3

በPowerShell ISE ውስጥ የትዕዛዝ መቃን በመጠቀም ስክሪፕት ከግቤቶች ጋር በተመሳሳይ መንገድ ማሄድ ይችላሉ።

አቋራጭን በመጠቀም የPowerShell ስክሪፕት እንዴት እንደሚሰራ?

ይህ ተግባር በሁለት መንገዶች ሊከናወን ይችላል-

  1. ስክሪፕቱን ለማስኬድ ትእዛዝ የሚጽፍበት bat/cmd ፋይል ይፍጠሩ (ከላይ ያሉትን መለኪያዎች አንብበዋል)
  2. ወደ PowerShell አቋራጭ ይፍጠሩ፣ ይህም በአቃፊው ውስጥ ይገኛል c:\Windows\System32\WindowsPowerShell\v<версия>\ እና በ "ነገር" መስክ ውስጥ ባለው አቋራጭ ባህሪያት ውስጥ አስፈላጊዎቹን መለኪያዎች ይጨምሩ.

ስለዚህም፡ ለምሳሌ፡ ተጠቃሚው ሲገባ የPowershell ስክሪፕት ለማሄድ፡ በቀላሉ በቁጥር 2 ላይ እንደተገለጸው አቋራጭ መንገድ ፈጥረው ጅምር ላይ ማስቀመጥ ይችላሉ። እንዲሁም ከላይ ከተጠቀሱት ዘዴዎች ውስጥ አንዱን በመጠቀም አቋራጭ መንገድ መፍጠር ስክሪፕቱን እንደ አስተዳዳሪ ወይም እንደ ማንኛውም ተጠቃሚ እንደ መደበኛ ፕሮግራም በቀላሉ እንዲያሄዱ ያስችልዎታል።

የPowerShell ስክሪፕት ቋንቋ የተለያዩ ችግሮችን ለመፍታት በጣም ኃይለኛ መሳሪያ ነው፣ነገር ግን ለመልካም ነገሮች ብቻ ሳይሆን ለመጥፎ ነገሮችም ሊያገለግል ይችላል፣ስለዚህ በጥበብ ይጠቀሙበት።)

ልምድ ያካበቱ የዊንዶውስ 10 ኦፕሬቲንግ ሲስተም ተጠቃሚዎች ስለ ፓወር ሼል የትእዛዝ መስመር መገልገያ ሰምተው ይሆናል። ከዊንዶውስ 7 እና 8.1 ጋር አብሮ የመስራት ልምድ ያላቸውም ሊያውቁት ይችላሉ። ለዓመታት የዊንዶውስ የትእዛዝ መስመር መተግበሪያን እና የbat ፋይሎችን ከተጠቀምን በኋላ የበለጠ ኃይለኛ ከሆነ መሳሪያ ጋር ለመተዋወቅ ጊዜው አሁን ነው።

PowerShell በዊንዶውስ መሳሪያዎች ዝርዝር ውስጥ ጠቃሚ የሆነ ተጨማሪ ነው, እና ስፋቱ አንዳንድ ተጠቃሚዎችን ሊያስፈራ ይችላል. ምንድን ነው - የስክሪፕት ቋንቋ ወይም የትእዛዝ ሼል? አይጨነቁ፡ ምንም እንኳን ሰፊ ችሎታዎች ቢኖሩም፣ ማንም ሰው PowerShellን መቆጣጠር ይችላል።

ደረጃ 1: መጫን

በመጀመሪያ፣ የPowerShell መገልገያ ራሱ ያስፈልገናል። ዊንዶውስ 10ን እያስኬዱ ከሆነ የዊንዶውስ 10 አመታዊ ዝመና ስሪት 5.1 ተጭኗል ፣ ግን ልዩነቱ አይታይም። ዊንዶውስ 8 እና 8.1 ፓወር ሼል 4ን ይጠቀማሉ ፣ ይህም እንዲሁ በቂ ነው። በዊንዶውስ 7 ላይ PowerShellን መጫን ችግር አይፈጥርም ፣ ግን አሁንም ሁለት ተጨማሪ እርምጃዎችን መውሰድ ያስፈልግዎታል። በተለይም የ .Net Frameworkን በተጨማሪ መጫን ያስፈልግዎታል. PowerShellን የሚያካትት የዊንዶውስ አስተዳደር መዋቅርን መጫን ይችላሉ.

PowerShell ሁለት በይነገጾች አሉት። የላቁ ተጠቃሚዎች የተቀናጀ የስክሪፕት አካባቢ (አይኤስኢ) በመባል የሚታወቀውን ሙሉ GUI በይነገጽ መምረጥ ይችላሉ። ለጀማሪዎች የPowerShell ኮንሶል፣ ቀላል የጽሁፍ መሰረት ያለው የዊንዶውስ ትዕዛዝ መስመር አይነት በይነገጽ ወይም DOS 3.2 መጠቀም ጥሩ ነው።

በዊንዶውስ 10 ውስጥ PowerShellን እንደ አስተዳዳሪ ለማሄድ የጀምር አዝራሩን ጠቅ ያድርጉ እና ወደ ዊንዶውስ ፓወር ሼል ያሸብልሉ። በዊንዶውስ 8.1 ላይ ዊንዶውስ ፓወር ሼልን በዊንዶውስ ውስጥ ባለው የስርዓት አቃፊ ውስጥ ይፈልጉ። በዊንዶውስ 7 ውስጥ, ዛጎሉ በመለዋወጫዎች አቃፊ ውስጥ ይገኛል. እንደ መደበኛ ተጠቃሚ፣ PowerShell ከትክክለኛው ይልቅ የግራውን መዳፊት በመጠቀም በተመሳሳይ መንገድ ማስጀመር ይችላል።

በማንኛውም የዊንዶውስ ስሪት ላይ ፍለጋን መጠቀም ይችላሉ. ለወደፊት አጠቃቀም ቀላል እንዲሆን PowerShellን በተግባር አሞሌው ላይ መሰካት ይችላሉ።

ደረጃ 2: የድሮ የዊንዶውስ ትዕዛዞች

በPowerShell ውስጥ ያለው የዊንዶውስ ትዕዛዝ አገባብ እንደተለመደው ይሰራል። ለምሳሌ፡- ሲዲአቃፊዎችን ይለውጣል ፣ dirአሁን ባለው አቃፊ ውስጥ ያሉትን ሁሉንም ፋይሎች እና አቃፊዎች ዝርዝር ያሳያል።

የPowerShell ኮንሶሉን እንዴት እንደሚያስጀምሩት ላይ በመመስረት ወደ ውስጥ ሊጀምሩ ይችላሉ። c: \ Windows \ system32ወይም በሐ :\ተጠቃሚዎች . በቅጽበታዊ ገጽ እይታ ውስጥ ያለው ምሳሌ ትዕዛዙን ይጠቀማል ሲዲ..(ከቦታ ጋር) በአንድ ጊዜ አንድ ደረጃን ከፍ ለማድረግ እና ከዚያ ትዕዛዙን ያሂዱ dirበማውጫ ውስጥ የፋይሎችን እና የአቃፊዎችን ዝርዝር ለማሳየት ሐ፡\.

ደረጃ 3፡ የእገዛ ፋይሎችን ጫን

ቡድኖች ይወዳሉ ሲዲእና dirንቁ የPowerShell ትዕዛዞች አይደሉም። እነዚህ ተለዋጭ ስሞች ተብለው የሚጠሩ ናቸው - ለእውነተኛ የ PowerShell ትዕዛዞች ምትክ። ተለዋጭ ስሞች በትእዛዝ መስመሩ ሰፊ ልምድ ላላቸው ሰዎች ጠቃሚ ናቸው። ሆኖም፣ የPowerShellን ጥልቀት አይነኩም።

በPowerShell ለመጀመር ይተይቡ መርዳትእና የሚፈልጉትን ትዕዛዝ. ቅጽበታዊ ገጽ እይታው ትዕዛዙን ያሳያል .

ቡድን መርዳትይላል። dirለPowerShell ትዕዛዝ ተለዋጭ ስም ነው። የልጅነት ዕቃ. ብትተይብ ልጅ ማግኘትPS C:\>, ትዕዛዙን ሲጠቀሙ ተመሳሳይ ነገር ያያሉ dir.

በቅጽበታዊ ገጽ እይታው ግርጌ ላይ እንደተገለጸው፣ የPowerShell የእርዳታ ፋይሎች በራስ ሰር አይጫኑም። እነሱን ለማግኘት፣ PowerShellን እንደ አስተዳዳሪ ያሂዱ እና ይተይቡ ማዘመን-እርዳታ. የእገዛ ፋይሎችን መጫን ብዙ ደቂቃዎችን ይወስዳል ፣ ብዙ ሞጁሎች ሊጎድሉ ይችላሉ - ለምሳሌ ፣ በዚህ አጋጣሚ እገዛ ለ NetWNV እና SecureBoot አልተጫኑም። ሁሉም ነገር ዝግጁ ሲሆን, የተሟላ የእገዛ ስርዓት ሁልጊዜ አስፈላጊ ምክሮችን ይሰጣል.

አሁን ትዕዛዙን ይተይቡ እርዳታ ማግኘትእና የሚፈልጉት ማንኛውም ትእዛዝ ("cmdlet" በPowerShell ፣ cmdlets በሩሲያኛ) ፣ መግለጫው ይታያል። ለምሳሌ፡- ማግኘት-እርዳታ ማግኘት-ልጅነትየአማራጮች ዝርዝር ያሳያል ልጅ ማግኘት. እንዲሁም የተለያዩ ሊሆኑ የሚችሉ አማራጮችን ማሳየት ይችላሉ. ለምሳሌ

ማግኘት-እገዛ ማግኘት-ልጅ-ምሳሌዎች

ሰባት ዝርዝር የአጠቃቀም ምሳሌዎችን ይሰጣል ልጅ ማግኘት. ቡድን

ማግኘት-እገዛ ማግኘት-ልጅ-ዝርዝር

እነዚህን ሰባት ምሳሌዎች እና የእያንዳንዱ ግቤት ዝርዝር ማብራሪያ በcmdlet ውስጥ ያካትታል ልጅ ማግኘት.

ደረጃ 4፡ በቅንብሮች ላይ እገዛን ያግኙ

በቅጽበታዊ ገጽ እይታ ውስጥ ከዚህ በታች ሁለት ዝርዝሮችን አስተውለህ ይሆናል። አገባብልጅ ማግኘት. ሁለት የተለያዩ አገባቦች መኖር ማለት cmdlet ን ለማስኬድ ሁለት መንገዶች አሉ። አገባብ እርስ በርስ እንዴት እንደሚለያይ እና መለኪያዎች ምን ማለት ናቸው? ዘዴውን ካወቁ መልሱ ቀላል ነው።

የ cmdlet መለኪያዎችን በተመለከተ ዝርዝሮችን ለማግኘት ልጅ ማግኘትወይም ሌላ የአጠቃቀም መለኪያ - ሙሉ:

ማግኘት-እርዳታ ማግኘት-ልጅ-ሙሉ

ይህ በ cmdlet ምን ማድረግ እንደሚችሉ እና ምን እንደሚሆን ዝርዝር ይሰጥዎታል. ቅጽበታዊ ገጽ እይታውን ይመልከቱ።

የመለኪያ መግለጫዎችን በመገምገም ያንን ያስተውላሉ ልጅ ማግኘትዕቃ ለማግኘት ያስችላል ልጅ(እንደ ንዑስ አቃፊ ስም ወይም የፋይል ስም ያለ) በተወሰነ ቦታ ላይ፣ ከተወሰኑ ቁምፊዎች ጋር ወይም ሳይዛመድ። ለምሳሌ፡-

ልጅ ማግኘት ንጥል "*.txt" - ተደጋጋሚ

አሁን ባለው አቃፊ እና ሁሉንም ንዑስ አቃፊዎች (በመለኪያው ምክንያት) የ"*.txt" ፋይሎችን ዝርዝር ይመልሳል - መደጋገም). እያለ

ልጅ ማግኘት "HKLM:\Software"

የሁሉንም ከፍተኛ ደረጃ የመመዝገቢያ ቁልፎች ዝርዝር ይመልሳል HKEY_LOCAL_MACHINE\Software.

የዊንዶውስ ትዕዛዝ መስመርን ወይም .bat ፋይሎችን ተጠቅመህ ወደ መዝገብ ቤት ለመግባት ሞክረህ ከሆነ የዚህን የመዳረሻ አማራጭ ተግባራዊነት ታደንቃለህ።

ደረጃ 5፡ ስሞችን መማር

እስካሁን የታዩት cmdlets ተመሳሳይ የሚመስሉበት ምክንያት አለ፡- ልጅ ማግኘት፣ ማዘመን-እገዛ፣ እርዳታ ማግኘትነጠላ የግስ-ስም ንድፍ ተጠቀም። ሁሉም የPowerShell cmdlets ከአንድ ስም በፊት ግስ ይጠቀማሉ። ይህ በአንድ ወቅት በVB እና VBA ቋንቋዎች ወጥነት በሌላቸው የትዕዛዝ ስሞች የተሰቃዩትን ይማርካቸዋል።

በጣም የተለመዱትን cmdlets ተመልከት:

አቀማመጥ-ቦታ: የአሁኑን የስራ ቦታ ወደ አንድ የተወሰነ ቦታ ያዘጋጃል

ይዘት ማግኘትየፋይሉን ይዘት ያገኛል

ዕቃ ያግኙፋይሎችን እና አቃፊዎችን ሰርስሮ ያወጣል።

ቅዳ-ንጥል: አንድ ነገር ከአንድ ቦታ ወደ ሌላ ይገለበጣል

አስወግድ-ንጥልፋይሎችን እና ማህደሮችን ይሰርዛል

በአካባቢያዊ ወይም በርቀት ኮምፒዩተር ላይ የሚሰሩ ሂደቶችን ያገኛል

አገልግሎት ማግኘትበአካባቢያዊ ወይም በርቀት ኮምፒዩተር ላይ የሚሰሩ አገልግሎቶችን ያገኛል

ጥሪ-ድር ጣቢያበበይነመረብ ላይ ካለው ድረ-ገጽ ላይ ይዘትን ሰርስሮ ያወጣል።

አንድ የተወሰነ cmdlet እንዴት እንደሚሰራ ለማየት ይጠቀሙ እርዳታ ማግኘትእንደ ሁኔታው

አግኙን ቅዳ-ንጥል -ሙሉ

በእገዛው ውስጥ ባለው መግለጫ ላይ በመመስረት, cmdlet ምን እንደሚፈልግ መረዳት ይችላሉ. ለምሳሌ፣ ሁሉንም ፋይሎች እና ማህደሮች መቅዳት ከፈለጉ ሰነዶችc:\ temp፣ ተጠቀም

ቅጅ-ንጥል c:\ተጠቃሚዎች \\ ሰነዶች \* c:\ temp

ይህን ትዕዛዝ በመተየብ፣ የPowerShell አካባቢን በርካታ አስደሳች ባህሪያትን ታያለህ። ለምሳሌ, ከተየብክ ቅጂ-አይእና የትር አዝራሩን ይጫኑ, PowerShell ይሞላል ቅዳ-ንጥል. cmdlet በስህተት ከተተይቡ እና PowerShell ሊያውቀው ካልቻለ፣ ምን እንደተፈጠረ ሙሉ መግለጫ ተሰጥቷል።

ይህን cmdlet ይሞክሩት፡-

invoke-webrequest askwoody.com

የድረ-ገጹን ርዕሶች፣ ምስሎች፣ አገናኞች እና ሌሎች ይዘቶች አጭር ዝርዝር ያገኛሉ። እባክዎን ወደ ውስጥ ያስተውሉ እርዳታ ማግኘትወደ ዝርዝር ጥሪ-ድር ጣቢያ, እሱም "የቅጾች, አገናኞች, ምስሎች እና ሌሎች አስፈላጊ የኤችቲኤምኤል ንጥረ ነገሮች ስብስብ ይመልሳል" - በትክክል በስክሪኑ ላይ መታየት ያለበት.

አንዳንድ cmdlets PowerShellን ራሱ እንዲያስተዳድሩ ይረዱዎታል፡

ትእዛዝ ማግኘትየሁሉም የሚገኙት cmdlets ዝርዝር

ማግኘት-ግሥየሁሉም የሚገኙ ግሦች ዝርዝር

ግልጽ-አስተናጋጅየአስተናጋጅ ፕሮግራሙን ማያ ገጽ ያጽዱ

የተለያዩ መለኪያዎች ትዕዛዞችን እንዲቀንሱ እና ጠቃሚ አማራጮችን እንዲቀንሱ ያስችሉዎታል. ለምሳሌ ከዊንዶውስ አገልግሎቶች ጋር የሚሰሩ ሁሉንም cmdlets ዝርዝር ለማየት ይተይቡ

ትእዛዝ ያግኙ * - አገልግሎት

በስም የሚገኙ ሁሉም ግሦች ይታያሉ አገልግሎት. ዝርዝራቸው እነሆ፡-

አግኝ-አገልግሎት

አዲስ-አገልግሎት

ዳግም አስጀምር-አገልግሎት

ከቆመበት ቀጥል-አገልግሎት

አዘጋጅ-አገልግሎት

ጅምር-አገልግሎት

ማቆሚያ-አገልግሎት

ተንጠልጣይ-አገልግሎት

እነዚህን cmdlets ከሌሎች ጋር ማጣመር ይችላሉ.

ደረጃ 6: ቧንቧዎችን መጠቀም

የዊንዶውስ የትእዛዝ መስመርን ወይም ባች ፋይሎችን የምታውቁ ከሆነ ስለ ማዘዋወር እና ቧንቧዎች ያውቃሉ። አቅጣጫ መቀየር (> ምልክት) እና ቧንቧዎች (| ምልክት) የአንድን ድርጊት ውጤት ወስደው ከሌላ ቦታ ጋር ያያይዙት። ለምሳሌ, የትዕዛዙን ውጤት ማዞር ይችላሉ dirወደ የጽሑፍ ፋይል ወይም የትዕዛዙን ውጤት ያስተላልፉ ፒንግለቡድኑ ማግኘትእንደ አስደሳች ውጤቶችን ለማጣራት

dir > temp.txt

ፒንግ askwoody.com | "ጥቅሎችን" ያግኙ > temp2.txt

እዚህ በሁለተኛው ቡድን ላይ ማግኘትሕብረቁምፊን ይፈልጋል እሽጎች, በቡድኑ ከ askwoody.com አድራሻ የተወሰደ ፒንግእና ሁሉንም ተዛማጅ መስመሮች ወደ ሚጠራው ፋይል ያገናኛል። temp2.txt.

ከእነዚህ ትዕዛዞች ውስጥ የመጀመሪያው በPowerShell ውስጥ በትክክል ይሰራል። ሁለተኛውን ትእዛዝ ለማስኬድ እንደዚህ ያለ ነገር ያስፈልግዎታል

ፒንግ askwoody.com | ይምረጡ-ሕብረቁምፊ እሽጎች | out-file temp2.txt

ማዘዋወርን እና ቧንቧዎችን በመጠቀም የዊንዶው የትእዛዝ መስመርን አቅም በእጅጉ ያሰፋዋል-የጽሑፍ ሕብረቁምፊን ለመፈለግ ማያ ገጹን ያለማቋረጥ ከማሸብለል ይልቅ የሚፈልጉትን የዊንዶውስ ትዕዛዞች ማጣራት ይችላሉ ።

Powershell ድጋፍ አለው። ቧንቧ, እና በጽሑፍ ብቻ የተወሰነ አይደለም. PowerShell አንድን ሙሉ ነገር ከአንድ cmdlet ወደ ሌላ እንዲያስተላልፉ ይፈቅድልዎታል፣ ነገሩ ውህደቱ የውሂብ (ባህሪዎች ይባላሉ) እና ያንን ውሂብ ሊጠቀሙበት የሚችሉ (ዘዴዎች) ጥምረት ነው።

ተንኮለኛው ክፍል የሚመጣው እቃዎችን ሲደረደሩ ነው. በአንድ cmdlet የሚቀርቡት እቃዎች በተቀባዩ cmdlet ከተቀበሉት የነገሮች አይነት ጋር መዛመድ አለባቸው። ጽሑፍ በጣም ቀላል የዕቃ ዓይነት ነው, ስለዚህ በጽሑፍ እየሰሩ ከሆነ, እቃዎችን ማስተካከል ቀላል ስራ ነው. የተቀሩት ነገሮች በጣም መሠረታዊ አይደሉም.

ይህንን እንዴት መረዳት ይቻላል? cmdlet ይጠቀሙ አባል መሆን. cmdlet ምን አይነት ነገር እየሰራ እንደሆነ ለማወቅ ከፈለጉ፣ ያሂዱት አባል መሆን. ለምሳሌ፣ በኮምፒዩተር ላይ የሚሰሩትን ሂደቶች ለመረዳት እየሞከሩ ከሆነ እና አማራጮችዎን ወደ cmdlets ካጠበቡ የ cmdlets ውጤት እንዴት እንደሚገኝ እነሆ፡-

ማግኘት-ሂደት | አባል መሆን

ይህን cmdlet ማስኬድ ረጅም የንብረት ዝርዝር እና ዘዴዎችን ይፈጥራል , ነገር ግን በዝርዝሩ መጀመሪያ ላይ የሚፈጠረውን ነገር አይነት ማየት ይችላሉ :

ዓይነት ስም፡ System.Diagnostics.ሂደት።

ከታች ያለው ቅጽበታዊ ገጽ እይታ ባህሪያቱንም ያሳያል ተብሎ ይጠራል ማግኘት-ሂደት መያዣዎች፣ ስም፣ NPM፣ PM፣ SI፣ VMእና ወ.ሰ..

ውጤቱን ማቀናበር ከፈለጉ ከዚህ cmdlet ጋር ለመስራት (በሞኒተሩ ላይ ረጅም ንቁ ሂደቶችን ከማሳየት ይልቅ) እንደ ግብዓት የሚወስድ ሌላ ትእዛዝ ማግኘት ያስፈልግዎታል ስርዓት.ዲያግኖስቲክስ.ሂደት. የሚፈልጉትን cmdlet ለማግኘት፣ PowerShellን እንደገና ይጠቀሙ፡-

ማግኘት-ትእዛዝ -Parametertype System.ዲያግኖስቲክስ.ሂደት

ይህ cmdlet ሊሰሩ የሚችሉ የcmdlets ዝርዝር ያቀርባል ስርዓት.ዲያግኖስቲክስ.ሂደት.

አንዳንድ cmdlets ማንኛውንም ዓይነት ውሂብ በመቀበል ይታወቃሉ። ከነሱ መካከል ዋነኛው ነው። . ይህ cmdlet በፓይፕ በኩል የተላከውን እያንዳንዱን ነገር አንድ በአንድ በማለፍ የተጠቀሰውን የመምረጫ መስፈርት ይተገበራል። የሚጠራ ልዩ ምልክት አለ $_ , ይህም በፓይፕ ውስጥ ያሉትን እያንዳንዱን እቃዎች አንድ በአንድ እንዲጠቀሙ ያስችልዎታል.

በኮምፒዩተር ላይ "svchost" በሚለው ስም የሚሄዱ ሁሉንም ሂደቶች ዝርዝር ማግኘት ይፈልጋሉ እንበል, ማለትም, ከንብረቱ ጋር መመሳሰል ይፈልጋሉ. ስምሂደት svchost. ትዕዛዙን ተጠቀም፡-

ማግኘት-ሂደት | የት-ነገር ($_.ስም -eq “svchost”)

Cmdlet እያንዳንዱን ነገር ይመለከታል ስርዓት.ዲያግኖስቲክስ.ሂደት፣ ያነፃፅራል። .ስምይህ እቃ ከ "svchost" ጋር; ተዛማጆች ካሉ በተቆጣጣሪው ላይ ይታያሉ። ቅጽበታዊ ገጽ እይታውን ይመልከቱ።

ደረጃ 7፡ ጠቃሚ የPowerShell ትዕዛዞችን ይተንትኑ

አሁን ኮምፒውተሩን ለመጉዳት የሚያስችል በቂ እውቀት አለህ ስለዚህ ተጠንቀቅ። ለምሳሌ በተደጋጋሚ የሚጠየቁ የPowerShell ትዕዛዞችን እንይ።

እነዚህ ትዕዛዞች በዊንዶውስ 10 ላይ ብቻ ይሰራሉ ​​እና PowerShellን እንደ አስተዳዳሪ ሲያሄዱ ብቻ ነው. ቀድሞ የተጫኑትን የዊንዶውስ 10 አፕሊኬሽኖች እንደገና ለመጫን የተነደፉ ናቸው እና እነዚህን ፕሮግራሞች መጀመሪያ ላራገፉ እና ከዚያ ለመመለስ ለወሰኑ ሰዎች ጠቃሚ ሊሆኑ ይችላሉ ። ትእዛዞቹ ይህን ይመስላል።

Get-AppXPackage | Foreach (Add-AppxPackage -DisableDevelopmentMode -«$($_.InstallLocation)\AppXManifest.xml» ይመዝገቡ)

ይህንን ትእዛዝ ካሄዱ ቀይ ማስጠንቀቂያዎችን ችላ ይበሉ እና ትዕዛዙ ሲጠናቀቅ ኮምፒተርዎን እንደገና ያስጀምሩ; በዊንዶውስ 10 ውስጥ ያሉ ሁሉም ቀድሞ የተጫኑ ፕሮግራሞች በቦታቸው ይታያሉ።

ይህ ትእዛዝ እንዴት እንደሚሰራ እነሆ። Get-AppXPackageበተጠቃሚ መገለጫ ውስጥ ያሉትን ሁሉንም የመተግበሪያ ጥቅሎች ይፈትሻል። አፕሊኬሽኑን ቢሰርዙትም በተጠቃሚ መገለጫ ዝርዝር ውስጥ እንዳለ ይቀራል።

Cmdlet Get-AppXPackageዕቃ ይመልሳል ስም ይተይቡ Microsoft.Windows.Appx.PackageManager.Commands.AppxPackageየመተግበሪያው ጥቅል ሙሉ ብቃት ያለው ስም እና ተዛማጅ የኤክስኤምኤል አንጸባራቂ ፋይል የሚገኝበትን ቦታ ያካትታል። cmdlet ን ከሰሩ ማግኘት-appxpackage, የመተግበሪያ ፓኬጆችን ረጅም ዝርዝር ያያሉ. ቅጽበታዊ ገጽ እይታው የ Xbox መተግበሪያን መግለጫ ያሳያል።

Cmdlet ፊት ለፊትበእያንዳንዱ ዕቃ ውስጥ ቀለበቶች AppXPackageወደ cmdlet በመላክ አክል-AppxPackage. እንደሚለው እርዳታ ማግኘትአክል-AppxPackageሁለት ቁልፍ ቁልፎች አሉ፡-

  • ቀይር - ይመዝገቡየመተግበሪያ ፓኬጆችን ነባር ጭነቶች ለመመዝገብ ጥቅም ላይ ይውላል, ግቤቶችን ማዘጋጀት ይችላሉ የዴቬሎፕመንት ሁነታን አሰናክልእና ይመዝገቡ
  • ቀይር -DevelopmentModeን አሰናክልዊንዶውስ የተሰናከለ፣ ያልተመዘገበ ወይም የተበላሸውን ነባር የመተግበሪያ ፓኬጅ በድጋሚ እንዲያስመዘግብ ይነግረዋል።

መስመር" $($_.InstallLocation)\AppXManifest.x ml" ፋይሉ የት እንደሚገኝ ይገልጻል አንጸባራቂ.xml. ፋይሎቹን ከተመለከቱ AppXManifest.xml, ውስብስብ የመተግበሪያ መታወቂያዎች ዝርዝር, ሊተገበሩ የሚችሉ ፋይሎችን እና ከመተግበሪያው ጋር የተያያዙ ብዙ የእይታ ክፍሎችን ያያሉ.

ዳግም ከተነሳ በኋላ ሁሉም የተጨመሩ የመተግበሪያ ጥቅሎች ከዊንዶውስ ማከማቻ ይወርዳሉ እና ይጫናሉ.

ከPowerShell ፕሮግራም በማሄድ ላይ

ከPowerShell ማንኛውንም ሊተገበር የሚችል ፋይል (ፕሮግራም ወይም የትእዛዝ መስመር መገልገያ) የማሄድ ተግባር ብዙ ጊዜ ይከሰታል። PowerShell ይህንን ለማድረግ ብዙ የተለያዩ መንገዶችን ያቀርባል፣ በዚህ ጽሑፍ ውስጥ በኋላ የምንመለከተው። በጣም ቀላሉን እንጀምር...

ቀጥታ ማስጀመር

በPowerShell ውስጥ ፈጻሚን ለማሄድ ቀላሉ መንገድ ከፋይሉ ጋር ወደ ማውጫው ሄዶ በቀጥታ ማስኬድ ነው። ለምሳሌ፣ ሰላምታ የሚያሳይ ቀላል ፕሮግራም እንውሰድ እና በትእዛዙ እንፈጽመው፡-

አቀማመጥ-መገኛ "C:\ፕሮግራም ፋይሎች"
\ ሰላም.exe

እባክዎ በሚፈለገው ማውጫ ውስጥ ቢሆኑም እንኳ ወደ ተፈጻሚው ፋይል አንጻራዊ መንገድ መግለጽ አለብዎት። ልዩነቱ በአካባቢ ተለዋዋጭ (መንገድ) ውስጥ ከተዘረዘሩት ማውጫዎች የተገኙ ፋይሎች ናቸው. ለምሳሌ በዊንዶውስ ሲስተም32 ማውጫ ውስጥ የሚገኙ የተለያዩ አብሮገነብ ፕሮግራሞች እና መገልገያዎች (ማስታወሻ ደብተር፣ ካልሲ፣ ፒንግ፣ ወዘተ) መንገዱን ሳይገልጹ ሊጀመሩ ይችላሉ።

ኦፕሬተር &

ወደ ተፈፃሚው ፋይል ሙሉውን መንገድ መግለጽ ከፈለጉ ኦፕሬተሩን መጠቀም ይችላሉ። & (ኦፕሬተር ይደውሉ)። የተጠቀሰውን የጽሑፍ ሕብረቁምፊ እንደ አንድ ነጠላ ትዕዛዝ እንዲፈጽሙ ይፈቅድልዎታል. ለምሳሌ፡-

& "C:\ Program Files\Hello.exe"

የ & ኦፕሬተር እየተላለፈ ያለውን ትዕዛዝ ስለማይተነተን ግቤቶችን መተርጎም አይችልም. ስለዚህ፣ ተጨማሪ መመዘኛዎች\ክርክሮች እንዲሁ እንደ ጽሑፍ፣ በጥቅሶች ውስጥ ተላልፈዋል። እንደ ምሳሌ የቀደመውን ፕሮግራም ወስደን በጥቂቱ እናስተካክለው የተፈለገውን ጽሑፍ እንደ መከራከሪያ እንዲቀበል፡-

& "C:\ Program Files\Hello.exe" ሰላም ዓለም"

ከተፈለገ በነጠላ ሰረዞች የተከፋፈሉ በርካታ ነጋሪ እሴቶችን መግለጽ ይችላሉ፡-

& "C:\ Program Files\Hello.exe" ሰላም፣"፣ "አለም"

ለመመቻቸት ትዕዛዙ እና ክርክሮቹ በተለዋዋጭ ሊቀመጡ ይችላሉ፡-

$exe = 'C:\ፕሮግራም ፋይሎች\Hello.exe'
$arg1 = "ሄሎ"
$arg2 = "ዓለም"
& $exe $arg1$arg2

ደህና ፣ ብዙ ክርክሮች ካሉ ፣ ከዚያ የሚከተሉትን ግንባታ በመጠቀም ሊጣመሩ ይችላሉ-

$exe = 'C:\ፕሮግራም ፋይሎች\Hello.exe'
$allargs = @("ሄሎ፣"አለም")
& $exe $allargs

ጥሪ-መግለጫ

Invoke-Expression cmdlet ከኦፕሬተር እና ከዋኝ ጋር በተመሳሳይ መንገድ ይሰራል - የጽሑፍ ሕብረቁምፊ ይወስዳል እና እንደ ትዕዛዝ ያስፈጽማል። ለምሳሌ፡-

Invoke-Expression -ትዕዛዝ 'C:\Windows\Hello.exe'

ሆኖም ግን, አንድ ትልቅ ችግር አለው, ማለትም ከቦታዎች ጋር ለመስራት አለመቻል. ለምሳሌ፣ የሚከተለው ትዕዛዝ ስህተት ይፈጥራል፡-

Invoke-Expression -Command 'C:\ Program Files\Hello.exe'

ይህ ባህሪ cmdlet መጠቀም እጅግ በጣም የማይመች ያደርገዋል። ምንም እንኳን አስፈላጊ ከሆነ እንደዚህ ያሉ ስህተቶች ተጨማሪ ጥቅሶችን በመጠቀም ማስቀረት ይቻላል ፣ ለምሳሌ እንደዚህ

Invoke-Expression -ትዕዛዝ "C:"የፕሮግራም ፋይሎች"\Hello.exe"

ጅምር-ሂደት።

የ Start-Process cmdlet ዘዴውን በመጠቀም የተገለጸውን ፋይል እንደ ሂደት ይጀምራል ጀምር.NET ክፍል ሂደት. ለምሳሌ፡-

ጀምር-ሂደት -ፋይልፓዝ'ሲ፡\ፕሮግራም ፋይሎች\Hello.exe'

በነባሪ, ሂደቱ በተለየ መስኮት ውስጥ ይሰራል, ይህም ሂደቱ ሲጠናቀቅ ይዘጋል. ይህንን ባህሪ መለኪያዎችን በመጠቀም መለወጥ ይችላሉ ፣ ስለዚህ የሚከተለው ትዕዛዝ አሁን ባለው መስኮት ውስጥ ይሰራል።

ጀምር-ሂደት -ፋይልፓዝ"ሲ፡\ፕሮግራም ፋይሎች\Hello.exe" -ምንም አዲስ መስኮት -ቆይ

ጅምር-ሂደትም ለሂደቱ ተጨማሪ ክርክሮችን እንዲያሳልፉ ይፈቅድልዎታል፡-

ጀምር-ሂደት -ፋይልፓዝ"ሲ፡\የፕሮግራም ፋይሎች\Hello.exe" -የክርክር ዝርዝር"ሄሎ፣አለም" -ምንም አዲስ መስኮት -ቆይ

በነባሪ፣ cmdlet ምንም ነገር አይመለስም፣ ነገር ግን የሂደቱን ነገር እንዲመልስ ለማስገደድ -PassThru መለኪያን መጠቀም ይችላሉ። ይህንን ነገር በተለዋዋጭ ውስጥ ማስቀመጥ በጣም ምቹ ነው-

$process = Start-Process -FilePath 'C:\ Program Files\Hello.exe' -Wait -PassThru

እንደ ሁኔታው ​​ያሉ ብዙ ጠቃሚ ነገሮችን ከሱ መማር ይችላሉ-

$process.የወጣ

$process.ExitTime

ወይም የማስፈጸሚያ ኮድ፡-

$process.ExitCode

.NET

በመርህ ደረጃ፣ የ NET ሂደት ክፍል ያለ Start-Process cmdlet በቀጥታ መጠቀም ይቻላል። ለምሳሌ ሂደቱን በትእዛዙ መጀመር ይችላሉ፡-

:: ጀምር('C:\ፕሮግራም ፋይሎች\Hello.exe')

ይህ ዘዴ በጣም ምቹ እና አስቸጋሪ ነው (በእኔ አስተያየት) ፣ ግን በጥቅም ላይ ትንሽ የበለጠ ተለዋዋጭ ነው። ለምሳሌ ፣ ፕሮግራማችንን አሁን ባለው መስኮት ውስጥ እናስኬድ ፣ ክርክሮችን ለእሱ እናስተላልፍ እና የአፈፃፀም ውጤቱን እንውሰድ-

$process = አዲስ-ነገር -TypeName ስርዓት.ዲያግኖስቲክስ.ሂደት
$process.StartInfo.FileName = ″ሲ፡\ፕሮግራም ፋይሎች\Hello.exe″
$process.StartInfo.Arguments = "ሰላም, ዓለም"
$process.StartInfo.RedirectStandardOutput = $እውነት
$process.StartInfo.UseShellExecute = $ ሐሰት
$process.ጀምር()
$process.WaitForExit()

$process.StandatdOutput.ReadToEnd()

WMI

ፕሮግራምን ማስኬድን ጨምሮ በ WMI ማንኛውንም ነገር ማድረግ ይችላሉ። ዘዴው ለዚህ በጣም ተስማሚ ነው ፍጠር WMI-ክፍል አሸነፈ32_ሂደት።ይህ ዘዴ በ RPC በኩል በአካባቢያዊ ወይም በርቀት ማሽን ላይ ሂደት ይጀምራል. ለምሳሌ አንድን ፕሮግራም በአካባቢያዊው ኮምፒውተር ላይ ለማሄድ የሚከተለውን ትዕዛዝ መጠቀም ትችላለህ፡-

() "Win32_ሂደት") ፍጠር("C:\ፕሮግራም ፋይሎች\Hello.exe")

እና በሩቅ ኮምፒተር ላይ ለማስፈጸም ትዕዛዙ እንደዚህ ይመስላል።

() "\\ የርቀት ኮምፒዩተር \ root \ cimv2: Win32_ሂደት" ፍጠር ("C:\ፕሮግራም ፋይሎች\Hello.exe").

በአማራጭ፣ Invoke-WmiMethod cmdletን መጠቀም ትችላለህ፡-

Invoke-WmiMethod -Class Win32_Process -ስም ፍጠር -የክርክር ዝርዝር ″C፡\ፕሮግራም ፋይሎች\Hello.exe″

ወይም Invoke-CimMethod cmdletን በመጠቀም፡-

Invoke-CimMethod -የክፍል ስም Win32_ሂደት -ዘዴ ስም ፍጠር -Arguments @(CommandLine=″C፡\ፕሮግራም ፋይሎች\Hello.exe″)

WMI ሂደቱን በተለየ መስኮት ያስኬዳል እና የሂደቱን መታወቂያ (ProcessID) እና የማስፈጸሚያውን ውጤት (ReturnValue) የያዘ ዕቃ ይመልሳል። የመመለሻ ዋጋ የሚከተሉትን እሴቶች ሊወስድ ይችላል፡-

0 - የተሳካ ማጠናቀቅ
2 -መዳረሻ ተከልክሏል።
3 - በቂ ያልሆነ መብት
8 - ያልታወቀ ውድቀት
9 - መንገድ አልተገኘም።
21 - ልክ ያልሆነ መለኪያ

ጥሪ-ትእዛዝ

Invoke-Command cmdlet ዊንአርኤምን በመጠቀም በአካባቢያዊ ወይም በርቀት ኮምፒዩተር ላይ ትዕዛዞችን ማከናወን ይችላል። ለምሳሌ ፕሮግራማችንን በአካባቢያዊው ኮምፒውተር ላይ ለማስኬድ የሚከተለውን ትዕዛዝ እንጠቀማለን፡-

Invoke-Command -ScriptBlock ("C:\"ፕሮግራም ፋይሎች"\Hello.exe")

አስፈላጊ ከሆነ ክርክሮችን ወደ ፕሮግራሙ ማስተላለፍ ይችላሉ-

Invoke-Command -Script Block (C:\"ፕሮግራም ፋይሎች"\Hello.exe "ጤና ይስጥልኝ ዓለም")

እባክዎን ኢንቮክ-ትዕዛዝ ከቦታዎች ጋር በጣም ወዳጃዊ እንዳልሆነ ልብ ይበሉ, ስለዚህ ስህተቶችን ለማስወገድ በጥቅሶች መፍጠር አለብዎት. ነገር ግን፣ እንደዚህ አይነት ችግሮችን ማስወገድ ይቻላል፣ ለምሳሌ የcmdlet አጠቃቀምን ከ & ከዋኝ ጋር በማጣመር፡-

Invoke-Command -Script Block (& ​​"C:\ Program Files\Hello.exe")

Invoke-Command በዋናነት ለርቀት መቆጣጠሪያ ጥቅም ላይ ይውላል፤ ዋናው ጥቅሙ በብዙ ኮምፒውተሮች ላይ በአንድ ጊዜ የማስፈጸም ችሎታ ነው። ለምሳሌ፡-

Invoke-Command -ScriptBlock ("C:\"ፕሮግራም ፋይሎች"\Hello.exe") -የኮምፒውተር ስም SRV1፣SRV2፣SRV3

$scriptblock = (″C:\'ፕሮግራም ፋይሎች'\Hello.exe″)
$ኮምፒውተሮች = @('SRV1'፣'SRV2'፣'SRV3')
ጥሪ-ትእዛዝ -ስክሪፕት አግድ $scriptblock -የኮምፒውተር ስም $ኮምፒውተሮች

በነባሪ ፣ cmdlet የፕሮግራሙን አፈፃፀም ውጤት ይመልሳል ፣ እና ከበስተጀርባ (የ -AsJob ግቤት) ካስኬዱት ፣ የሥራ ነገርን ይመልሳል-

Invoke-Command -ScriptBlock (C:\"ፕሮግራም ፋይሎች"\Hello.exe) -የኮምፒውተር ስም የአካባቢ አስተናጋጅ -አስሥራ -የሥራ ስም ሰላም

ጥሪ-ንጥል

Invoke-Item cmdlet የተነደፈው ነባሪ እርምጃን በፋይል ላይ ተግባራዊ ለማድረግ ነው። ስለዚህ ሊተገበር የሚችል ፋይልን በትእዛዙ ማሄድ ይችላሉ-

Invoke-Item -Path ″C፡\ፕሮግራም ፋይሎች\Hello.exe″

ሆኖም፣ የተወሰነ የፋይል አይነት ለመክፈት Invoke-Item መጠቀም በጣም ምቹ ነው። ለምሳሌ የጽሑፍ ፋይል የምንከፍተው በዚህ መንገድ ነው፡-

Invoke-Item -Path ″ሲ፡\ፋይሎች\test.txt″

እና በአቃፊው ውስጥ ያሉት ሁሉም የጽሑፍ ፋይሎች እዚህ አሉ።

ጥሪ-ንጥል - ዱካ ″C፡\ፋይሎች\*.txt″

ሲኤምዲ

ደህና ፣ በማጠቃለያው ፣ ከፓወር ሼል ፕሮግራምን ለማስጀመር ሌላኛው መንገድ የ cmd ሼል እየተጠቀመ ነው። ዘዴው በጣም “ቀጥታ ያልሆነ” ነው ፣ ግን አሁንም ይሠራል። የሚከተለው ትእዛዝ አዲስ የ cmd ምሳሌ ይጀምራል ፣ የተገለፀውን ፕሮግራም በውስጡ ያስፈጽማል ፣ ከ cmd ይወጣል እና ውጤቱን ይመልሳል።

cmd / c ″C:\ፕሮግራም ፋይሎች\Hello.exe″

PoSh አንድን ፕሮግራም ለማስጀመር ብዙ መንገዶችን ያቀርባል። እና እያንዳንዳቸው ለተወሰኑ ሁኔታዎች ጥሩ ናቸው.

በነገራችን ላይ ጽሑፉ የተፃፈው በPowerShell: Deep Dive እና Best Practice ላይ በመመስረት ነው። እንዲያነቡት እመክራለሁ ፣ አሁንም ብዙ አስደሳች ነገሮች እዚያ አሉ።