「PowerShell」のスクリプトでループ処理をしたい場合に、使える構文が幾つかある。主要な構文のうち「foreach」「ForEach-Object」を紹介する。
「Windows」のコマンド実行ツール「PowerShell」は、IT管理者がシステムを構成したり、タスクを自動化したりするのに活用できる。PowerShellのスクリプト(簡易プログラム)でループ処理を使えば、IT管理者は同じスクリプトを繰り返し記述することなく、タスクを反復実行可能になる。
PowerShellで利用できるループ処理の構文には幾つかの選択肢がある。本連載は、4種類の主要な構文を紹介する。前編はそのうち2種類を取り上げる。
「foreach」は、配列(同種のデータの集合)の各要素に対して処理を反復する。あるディレクトリ以下に存在する全てのサブディレクトリを調べて、そのサブディレクトリ内のファイルを一覧するには、foreachを使った以下のようなスクリプトを記述すればよい。
$directories = Get-ChildItem -Directory foreach ($directory in $directories) { Get-ChildItem $directory -File }
foreachの後ろには、
を順番に指定する。変数名には単数形の名詞、配列名には複数形の名詞を使用するのが一般的だ。この記法によって、読みやすく分かりやすいスクリプトを作成できる。
「ForEach-Object」はforeachと同じループ処理を実行するが、処理の際に「パイプライン」を使用する。パイプラインはあるコマンドの出力結果を別のコマンドに渡す構文を指し、「|」で表現する。foreachの例と同じ処理をForEach-Objectで実行する場合は、次のように記述する。
Get-ChildItem -Directory | ForEach-Object {Get-ChildItem $_ -File}
foreachとは異なり、ForEach-Objectのループでは反復処理の実行対象を表すのに「$_」を使用する。PowerShellバージョン3.0以降では「$PSItem」を使うこともできる。
インタラクティブ(対話的)にコマンドを実行する場合、特に「%」をエイリアス(コマンドの別名)に使用する場合は、基本的にforeachよりもForEach-Objectの方が使いやすい。スクリプトで利用する場合はforeachの方が分かりやすい上に、ネスト(入れ子構造)を利用できる。
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
ビジネスに生成AIを利用するのが当たり前になりつつある中、ローコード開発への活用を模索している組織も少なくない。開発者不足の解消や開発コストの削減など、さまざまな問題を解消するために、生成AIをどう活用すればよいのか。
急速に変化する顧客ニーズに応えるような適切な製品を継続的に提供するためには、より多くのアプリを生み出す必要があるが、そのための開発者が不足している。そこで注目されているのが、生成AIやローコード開発プラットフォームだ。
あらゆる組織は、従業員と消費者の双方に良質なエクスペリエンスを提供する義務を負っている。アプリ開発と高度な自動化は、この目的を達成するための有効策の1つだが、それぞれを適切に実装できなければ、むしろリスク要因ともなり得る。
DXが進み、レガシーシステムからの脱却が喫緊の課題となっている今。「ERP×ノーコードツール」のアプローチで基幹システムの刷新に取り組む企業が増えている。そのアプローチを推進するに当たってのポイントを解説する。
DXの本質は、デジタル技術を駆使して変化に適応する能力を身につけることにある。その手段の1つとして注目を集めているのが、ローコード/ノーコード開発ツールだ。京王グループなどの事例とともに、その特徴やメリットを紹介する。
いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。
「マーケティングオートメーション」 国内売れ筋TOP10(2025年5月)
今週は、マーケティングオートメーション(MA)ツールの売れ筋TOP10を紹介します。
「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年4月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。
「ECプラットフォーム」売れ筋TOP10(2025年4月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。