コマンドプロンプトとPowerShell

本項は書きたての記事です。正確な情報は公式サイト、公式ドキュメント、記載の参照サイトでご確認ください。

基本的に何もかもが違う。
2020年にVBSが事実上廃止になったこともありWSHが新しい環境で使えなくなっていく。
回避するにはPowerShellを知っておく必要があり且つコマンドプロンプトとの対応がどうなっているのかを知りたいという目的で作成した。

ぼやき

+ 開く
PowerShellはWindowsServer系のバッチ開発では絶対に必要になる。
しかしPowerShellの本当に独特なコマンド、中途半端なエイリアスは学校で学んできたもの全て葬り去られるようなほどショッキング。なので慣れるのには相当時間がかかるものと思った方が良い。

コマンドプロンプトとPowerShellの違い

- 開く
コマンドプロンプト PowerShell
宣言 なし なし
変数 VARNAME=値 $varname = 値
変数型 [string] $var = 値
定数 set CONSTNAME=値 set CONSTVAR 値 -option constant
変数利用 %VARNAME% $var
配列宣言 - $arr = @()
配列 (a,b,c) $arr = @(a,b,c,..)
$[Array]$arr = @(a,b,c)
$local:arr = @(a,b,c)
二次元配列 $arr = @(@(),@())
$[Array]$arr = @(@(),@())
$local:arr = @(@(),@())
配列利用 %var[1]% $arr[1]
%var[1][2]% $arr[2][3]
$arr[1..3] ※1~3までを出力
メソッド [string] $str = "nihon"
echo $str.ToUpper()
エスケープ `(シングルバッククウォート)
文字列連結 +
ファイル読込 $list=Get-Content month.txt
条件分岐 if %a%==値 ( ) else () if(条件式){ } ElseIf{ }Else{ }
ループ for for /opt %%a in(開始, step, 終了) do 処理式 ) for($i=0; $i -le 10; $i++) { 処理式 }
ループ foreach foreach ($a in Get-Content D:\data.txt){ 処理式 }
ループ while while ($true){ 処理式 }
分岐 switch( $var ){
a{式}
b{式}
default{式}
}




タグ:

win cmd powershell
最終更新:2021年12月30日 01:43