PowerShell備忘録1:コマンドレット、メソッド、条件分岐、雑記

備忘録のため、例文と要点まとめ。

 

【特定フォルダー、以下のエクセルファイル一覧の名前を変数(リスト)取得する】

${変数} = Get-ChildItem [フォルダーパス] | Where-Object {$_.name -like "*xls*"} | Select-Object -ExpandProperty Name 

 

【日付(1ヶ月前,yyyyMM)の形式で取得】

(Get-Date).addmonths(-1).tostring("yyyyMM")

 ⇒<.addmonths>:<メソッド>指定した数値分、月の増減を実施する。

 ⇒<.addyears>:<メソッド>年数を操作する場合、左記のメソッド

 

 

【リスト情報を取得して、ループで処理を実行する】

 ⇒1行に記述しても問題無し(例:foreach($test in $testlist){ echo $test }

foreach(${格納変数} in {リスト内容})

{

[ループ実行したい処理]

 

【ifで条件分岐】

if( [ 条件式 ] )

{

[条件:trueの場合の処理]

} else if( [ 条件式 2 ] ){

[条件2:trueの場合の処理]

     }else{

[条件:Falseの場合の処理]

             }

 

【指定文字列が含まれている場合、一致したインデックスを戻り値を返す。】

${変数}.IndexOf({”文字列"もしくは${変数})

  ⇒<.IndexOf>:<メソッド>指定文字列、該当しない場合 戻り値は[-1].

    ⇒例:$a("abcdef").IndexOf("de") ⇒ 4

 

 

【文字列を指定区切り文字で区切って、配列格納する】

{”文字列”もしくは${変数}}={”文字列"}.split({"指定区切り文字"})

 ⇒<.split>:<メソッド> 

 ⇒例:$a=”hogehoge.xls".split(".")

    $a[0] ⇒ hogehoge

    $a[1]⇒ xls

 

 

【文字列、変数を交えて形成】

${変数} = "abcde”+${変数1}+”123”

 ⇒ echo ${変数}

 ⇒"abcde${変数1}123”