さて、あなたの最初の問題は、シェル(PowerShell)と端末を比較していることです。Linuxでは、ターミナルは文字ベースのI / Oを送受信するものであり、背後にインタラクティブユーザーがいると見なされます(つまり、シェルを含むために使用されるGUIアプリケーションです)。Ubuntuのターミナル内で実行される最も一般的なシェルの1つはBashですが、他にもあります。
オフラインの人々は、多くを説明することなく、Windows PowerShellはUnix管理者にWindowsの使用をより快適にさせる試みだと言っています。
実際、PowerShellはWindowsがWindows であり、インタラクティブでスクリプト可能なコマンドライン環境でWMI、COM、および.NETオブジェクトモデルの多くを公開しています。およびI / Oリダイレクト-古いDOS(2.0以降)command.com
と同様に、Unixシェルからcmd.exe
。パイプラインは、PowerShellのオブジェクトで機能します。十分な知識があれば、その場でHTMLやExcelスプレッドシートを作成できます。確かに、Windows NT 4.0cmd.exe
からあまり変わっていない古いシェルからのアップグレード/交換です。
構文については、(コマンドレットの最後にどれも使用しませんが、それはあまりUnixシェルのようなものです/
スイッチまたはパラメータインジケータとして)が、古典的なUnixのコマンドには多くの別名がある-などに入るなどls
のように動作しますPowerShellウィンドウではdir
。しかし、これらは単なるエイリアスです(「Get-Alias」にリストされていますか?)。
PowerShellの機能に関しては、VBScriptとCScriptから、スクリプトのみの形式で、実際には同様の機能がありましたが、どちらも.NETより前のものです。
ほとんどの場合、Bashを使用するときにUnixの人がしなくてよいことの1つは、多くの高度で単純なPowerShellタスクに必要なプログラマーまたはオブジェクトの非常に精巧なオブジェクトモデルに精通していることです。しかし、これは多くの標準POSIXコマンドのストレートテキスト出力の明確な規則があるためにのみ可能です。Windowsにはこの伝統がありません。mmc
管理タスクにコンソールを使用することを好み、長年にわたってコマンドをあちこちに追加しているようです。さらに、多くの有名なUnixユーティリティは複雑でありrsync
、使用する前にある程度の調査が必要です-、、および他の多くのユーティリティwget
。効率はおそらく、使用しているツールを他の何よりもよく知っているかどうかの関数です。