Twój pierwszy problem polega na tym, że porównujesz powłokę (PowerShell) z terminalem. W Linuksie terminal to coś, co wysyła i odbiera we / wy oparte na znakach i zakłada się, że stoi za nim interaktywny użytkownik (innymi słowy, jest to aplikacja GUI zawierająca powłokę). Jedną z najczęstszych powłok uruchomionych w Terminalu Ubuntu jest Bash , ale są też inne.
Ludzie offline mówią mi bez wyjaśnienia, że Windows PowerShell jest próbą sprawienia, aby administratorzy systemu Unix czuli się bardziej komfortowo z systemem Windows.
Naprawdę prawdą jest, aby powiedzieć, że PowerShell to system Windows odsłaniający dużą część modelu obiektowego WMI , COM i .NET w interaktywnym i skryptowym środowisku wiersza poleceń - i że środowisko wiersza poleceń nadal pożycza wiele pojęć - takich jak potoki i przekierowanie I / O - z powłok uniksowych, podobnie jak stary DOS (2.0 i nowsze) command.com
i cmd.exe
tak się stało. Rurociągi działają z obiektami w PowerShell. Możesz robić rzeczy takie jak tworzenie HTML i ewentualnie arkuszy kalkulacyjnych Excel w locie, jeśli wiesz wystarczająco dużo. Jest to z pewnością aktualizacja / wymiana ze starej cmd.exe
powłoki, która niewiele się zmieniła od Windows NT 4.0 .
Jeśli chodzi o składnię, to mniej przypomina powłoki uniksowe (chociaż w końcu żadne z poleceń cmdlet nie używa /
jako przełącznika lub wskaźnika parametru), ale istnieje wiele aliasów do klasycznych poleceń uniksowych - takich jak wejście ls
w oknie programu PowerShell dir
. Ale to tylko aliasy (lista „Get-Alias” je wymienia?).
Jeśli chodzi o możliwości programu PowerShell, naprawdę miałeś podobne możliwości, tylko w skryptach, z VBScript i CScript - chociaż oba z nich pochodzą wcześniej .NET.
Jedną rzeczą, której ludzie uniksowi nie muszą robić podczas korzystania z Basha przez większość czasu, jest dokładne zaznajomienie się z bardzo skomplikowanym modelem obiektowym programisty lub obiektu, który jest wymagany do wielu zaawansowanych i prostych zadań PowerShell. Jest to jednak możliwe tylko dlatego, że dla wielu standardowych poleceń POSIX istnieje wyraźna konwencja wyprowadzania zwykłego tekstu . Windows nie miał tej tradycji - wydawało się, że wolisz używać mmc
konsoli do zadań administracyjnych, z poleceniami dodawanymi tu i tam przez lata. Ponadto, wiele znanych narzędzi systemu Unix są złożone i wymagają pewnego badania Przed rozpoczęciem użytkowania - rsync
, wget
i wiele innych. Wydajność jest prawdopodobnie funkcją tego, jak dobrze się zna narzędzie, którego używa bardziej niż cokolwiek innego.