GT განმარტავს: განსხვავება Command Prompt-სა და Powershell-ს შორის
Miscellanea / / November 29, 2021
Windows OS მიეწოდება რამდენიმე აპს და სასარგებლო ხელსაწყოებს, რომლებიც მომხმარებლებს ეხმარება შეასრულონ სხვადასხვა ამოცანები. აპებთან ერთად არის ისეთი ინსტრუმენტები, როგორიცაა ბრძანების ხაზი (CMD) და PowerShell, რომლებიც ხშირად გამოიყენება შეცდომების აღმოსაფხვრელად, სერიული ბრძანებების გასაშვებად და სისტემის შესანარჩუნებლად. მაგრამ რა განსხვავებაა Command Prompt-სა და PowerShell-ს შორის?
გარეგნულად, შეგიძლიათ გამოიყენოთ ორივე ინსტრუმენტი და ბევრი ბრძანება ორივეზე შესრულებადია. მაგრამ ამ ორს შორის არის დახვეწილი განსხვავებები. უფრო მარტივი სიტყვებით რომ ვთქვათ, PowerShell არის CMD-ის უფროსი ძმა და შეიძლება გამოყენებულ იქნას CMD ბრძანებების უმეტესობის გასაშვებად, შემდეგ კი სხვა.
Მოდით დავიწყოთ.
1. რა არის ბრძანების ხაზი (CMD)
Windows 95 და 98 მოვიდა Command.com, რომელიც ასევე ცნობილი იყო როგორც MS-DOS. მომხმარებლებს შეეძლოთ უშუალოდ OS-თან ურთიერთობა ტექსტზე დაფუძნებული ბრძანებების გამოყენებით. შემდეგ Microsoft-მა გამოუშვა CMD (Command Prompt) Windows NT-ით, რომელიც უკეთესი იყო, ვიდრე წინა გამეორებები.
CMD ძირითადად გამოიყენება ჯგუფური ბრძანებების შესასრულებლად, ფაილურ სისტემასთან ურთიერთობისთვის (DIR ბრძანებები) და სისტემასთან დაკავშირებული შეცდომების აღმოფხვრაც კი, რომლებიც სხვაგვარად ძნელი მოსაგვარებელია.
2. რა არის PowerShell
PowerShell პირველად გამოვიდა 2006 წელს Windows XP SP2-ისთვის. გაუმჯობესებულმა PowerShell 2.0-მა Windows 7-თან ერთად კიდევ უფრო მეტი ფუნქციები მოიტანა და მრავალი CMD ბრძანებით იყო თავსებადი. Windows 10 მას აქვს როგორც ნაგულისხმევი ბრძანების ხაზის ინსტრუმენტი. PowerShell-ის ამოქმედების მიზეზი იყო მისი C# პროგრამირების ენასთან მუშაობის უნარი, რომელიც ასევე ინტეგრირებულია .NET Framework-თან.
ეს საშუალებას აძლევდა მომხმარებლებს დაეწერათ პერსონალური სკრიპტები, რომლებიც შეიძლება გამოყენებულ იქნას დისტანციურად ბრძანებების სერიის შესასრულებლად. თქვენ ასევე შეგიძლიათ გამოიყენოთ იგი გარკვეული ადმინისტრაციული ამოცანების ავტომატიზაციისთვის, რაც უფრო მეტ მოქნილობას აძლევს, ვიდრე თავმდაბალი CMD. ეს არის სკრიპტირების გარემო, რომელიც მოქმედებს როგორც უფრო მეტი, ვიდრე უბრალოდ გარსი. ასევე, მას აქვს ლურჯი ფონი შავის ნაცვლად რატომღაც.
3. განსხვავება CMD-სა და PowerShell-ს შორის
CMD ძირითადად გამოიყენება სისტემის ადმინისტრატორების მიერ სერიული ფაილების დასამუშავებლად, ზოგიერთი გავრცელებული შეცდომის მოსაგვარებლად და კორუმპირებული სისტემის ფაილების გამოსასწორებლად.
PowerShell მიიყვანს საკითხებს შემდეგ დონეზე, ადმინისტრატორებს საშუალებას აძლევს გააკონტროლონ მთელი ქსელი და ამ ქსელის ყველა სისტემა. CMD-ისგან განსხვავებით, რომელსაც შეუძლია მხოლოდ Batch ბრძანებების ინტერპრეტაცია და შესრულება, PowerShell-ს ასევე შეუძლია Batch და PowerShell ბრძანებების ინტერპრეტაცია და შესრულება. Ეს რა არის?
აქ მოდის "cmdlets". ეს არის ბრძანებების ჯგუფი, რომელთა შესრულებაც მომხმარებლებს შეუძლიათ ერთი ბრძანებით. ბრძანებების ამ ჯგუფს სკრიპტები ეწოდება. CMD-ში, თქვენ უნდა დაელოდოთ, სანამ წინა ბრძანება სრულად შესრულდება, სანამ შემდეგს მისცემთ. PowerShell დაზოგავს დროს და საშუალებას აძლევს ავტომატიზაციას ამ გზით სკრიპტების გამოყენებით.
მიუხედავად იმისა, რომ CMD-ს შეუძლია მხოლოდ ტექსტთან მუშაობა, PowerShell-მა ამოიღო ლინუქსის ბრძანების ხაზები და ასევე შეუძლია მილებით მუშაობა. მილები საშუალებას აძლევს ერთ cmdlet-ს გაუზიაროს თუნდაც რთული მონაცემები (გამომავალი) სხვა cmdlet-ს (შეყვანა). ეს საშუალებას აძლევს ადმინისტრატორებს მანიპულირონ და გადაიტანონ მონაცემები სხვადასხვა პროგრამებსა და კომპიუტერებს შორის ქსელში, cmdlet-ების შესრულებით განსაზღვრული თანმიმდევრობით.
არ დაუშვათ შეცდომა, თუმცა PowerShell ძლიერია, ის არსად არის ისეთი ძლიერი, როგორც ზოგიერთი ბრძანების ხაზის ხელსაწყოები, რომლებიც მხარდაჭერილია Linux-ის არომატიზებულ დისტრიბუციებში.
4. როდის გამოვიყენოთ
CMD ფართოდ გამოიყენება სისტემის ფაილებისა და საქაღალდეების სტრუქტურაში ნავიგაციისთვის, მასთან ურთიერთობის, თვისებების შესაცვლელად და Windows-ის შეცდომების აღმოსაფხვრელად. GT-ში, ჩვენ ხშირად ვთხოვთ ჩვენს მკითხველს, გაუშვან ბრძანებები, როგორიცაა SFC (System File Checker) და DISM (Deployment Image Service and Management), რათა შეამოწმონ სისტემის ფაილების მთლიანობა და შეაკეთონ ისინი.
სისტემის ადმინისტრატორებს ურჩევნიათ PowerShell მონაცემთა მართვისთვის, განსაკუთრებით კომპიუტერების ქსელში. ასევე, რადგან თქვენ აწარმოებთ CMD-ის თითქმის ყველა ბრძანებას PowerShell-ში, ის უპირატესობას ანიჭებს Command Prompt-ს. ასევე, შეგიძლიათ გაუშვათ cmdlets, რომლებიც წარმოადგენს ბრძანებების (სკრიპტების) კომპლექტს ადმინისტრაციული ფუნქციების შესასრულებლად.
NET Framework-ის კოდების საცავზე შეხების შესაძლებლობა უფრო მეტ შესაძლებლობებს უხსნის PowerShell-ის მომხმარებლებს. შეგიძლიათ მიიღოთ ინფორმაცია მიმდინარე პროცესების შესახებ (მიიღეთ-პროცესის cmdlet), ქსელური კომუნიკაცია, მონაცემთა ბაზასთან დაკავშირებული ადმინისტრაციული ამოცანების შესრულება და კრიპტოგრაფიული ალგორითმებიც კი. უფრო შესაფერისია პროგრამისტებისა და ადმინისტრატორებისთვის.
შემდეგ მოდის პირობითი ლოგიკა, სადაც შეგიძლიათ დაგეგმოთ დავალებების შესრულება, მაგალითად, მოვლენის შემთხვევის საფუძველზე. პირობითი ლოგიკის სხვა მაგალითები მოიცავს პარამეტრებს, როგორიცაა if, else, for, when და switch. მარტივი მაგალითი შეიძლება იყოს cmdlet, რომელიც დახურავს ყველა ფონურ აპლიკაციას, თუ ოპერატიული მეხსიერება სავსეა ან არღვევს გარკვეულ დონეს გამოყენების თვალსაზრისით. მოწესრიგებული, ჰა?
მიუხედავად იმისა, რომ ეს მარტივი მაგალითებია, ქსელის ადმინისტრატორები იყენებენ PowerShell-ს მრავალი რთული ამოცანისთვის. არ იცით როგორ შექმნათ თქვენი პირველი cmdlet? არ ინერვიულოთ, რადგან PowerShell-ს აქვს ენთუზიასტების დიდი საზოგადოება, რომლებმაც გააზიარეს თავიანთი cmdlet-ები, რომელთა გამოყენებაც შეგიძლიათ.
Power Move
Microsoft TechNet აქვს სახელმძღვანელოების, მაგალითების და კოდების საცავების ბმულების დიდი კოლექცია (როგორიცაა GitHub). შესანიშნავი ადგილი თქვენი მოგზაურობის დასაწყებად. ცოტა ხნის წინ, ახალი Windows ტერმინალის აპლიკაცია Windows 10-ისთვის გამოვიდა, რამაც ბევრი მომხმარებელი დააბნია. თუმცა, Microsoft-ს აქვს ცხადყო რომ CMD არის აქ დარჩი. ეს ძალიან ლოგიკურია იმის დანახვა, თუ რამდენი მომხმარებელი იყენებს CMD-ს, როგორც ნაგულისხმევი ბრძანების ხაზის ხელსაწყოს.
Შემდეგი: ეძებთ CMD რჩევებსა და ხრიკებს? დააწკაპუნეთ ქვემოთ მოცემულ ბმულზე, რომ იპოვოთ 11 მაგარი CMD ბრძანების კურირებული სია.