知っておくべき 16 の重要な PowerShell コマンド

知っておくべき 16 の重要な PowerShell コマンド

Windows PowerShell は、に基づく強力なアプリです。ネットフレームワーク。これは、コマンドレットと呼ばれる PowerShell コマンドに依存しています。これらを特定の順序で組み合わせることで、PowerShell ウィンドウからほぼすべての操作を実行できます。そのしくみを説明するために、最も重要な PowerShell コマンドをリストにまとめました。

PowerShell コマンドの使用方法

コマンドレットの使用を開始するには、検索メニューから管理者モードで PowerShell を起動する必要があります。

Windows 11 検索から PowerShell を管理者モードで開きます。

基本的な PowerShell コマンド

Windows の PowerShell は、アクティブなコマンド ライン インターフェイスであるだけでなく、任意のアプリケーションやプロセスを実行できるスクリプトおよびプログラミング ウィンドウでもあります。数百のコマンドレットがありますが、開始するには、最も重要なものだけを学ぶ必要があります。

1. Clear-Host または Cls

入力中に失敗を犯したか、何かが計画どおりに進んでいませんか? 幸いなことに、PowerShell にはやり直しがあります。便利なclear-hostコマンドは、ディスプレイからテキスト全体をクリアできます。画面の任意の行にコマンドを入力するだけで、すべてが即座に消えます。

ホスト コマンドをクリアして、PowerShell ウィンドウのテキスト全体を削除します。

コマンド プロンプトでよく使用される、より単純なclsコマンドを PowerShell で使用することもできます。これら 2 つのクリア テキスト コマンドは、エラー メッセージが表示されたときに便利です。

エラー メッセージの下に cls コマンドを入力して、PowerShell のテキスト全体を削除します。

コマンド プロンプトまたは PowerShell ウィンドウでの入力エラーを回避するには、コマンドをコピーして貼り付けて効率を高めます。

2. HTML への変換

雑然とした PowerShell のスクリーンショットを見るよりも、HTML の長い文字列を使用する方が美的です。また、スクリプト エラーやその他の PowerShell イベントを技術者以外のチーム メンバーと共有する必要がある場合にも役立ちます。

すべての PowerShell コンポーネントが使用します。PowerShell 画面で表示できる NET オブジェクト。ブラウザー ウィンドウ全体に表示するには、Convert-to-HTMLコマンドレットを使用します。以下は、Web 上のすべての PowerShell エイリアスを表示する例です。「Invoke-Item」の前に別の行を使用することを忘れないでください。

Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm

Web ページにエイリアスを表示する PowerShell の Convert-to-HTML コマンド。

HTML 変換コマンドを実行するとすぐに、PowerShell は別のアプリケーションを使用して出力ファイルを開くように求めます。ブラウザを使用すると、エイリアスなどのオブジェクトのリストが生成されます。

Web ブラウザーで表示できる PowerShell エイリアスの完全なリスト。

3. Get コマンド

コマンドには主に、エイリアスと関数の 2 種類があります。PowerShell エイリアスは、関数またはコマンドレットのニックネームとして機能します。Windows はデフォルトでいくつかのエイリアスを保存しており、Get-Command. 独自のエイリアスを作成することもできます。

PowerShell の Get コマンドのエイリアスの一覧。

PowerShell のもう 1 つのコマンド タイプは関数です。これらは、承認された動詞 (「get」など) と単純な名詞 (「StorageNode」など) を使用します。

Powershell の Get コマンドの下に表示される関数のリスト。

「Select-object」関数 (動詞と名詞の組み合わせに注意してください) を、コンピューター名の環境変数として知られているものと共に使用して、ローカル コンピューターの名前を表示します。

$env:computername | Select-Object

PowerShell で Select-Object 関数と環境変数を使用してコンピューター名を取得します。

関数は、高度な PowerShell コーディングの出発点です。などの関数をStart-processパラメータや変数とともに使用して、一連のタスクを実行する独自のバッチ スクリプトを作成できます。

4.ヘルプを得る

Get-HelpPowerShellには、すべてのクイック フィックスとヘルプ記事を 1 つのウィンドウに表示する、独自の自己学習型トラブルシューティング コマンドレットがあります。さまざまなモジュールのヘルプについては、出力の最後にコマンドを入力してください。Yヘルプ コンテンツの更新されたバージョンを許可するには、を押す必要がある場合があります。

Get-Help コマンドの後に PowerShell がさまざまなモジュールのヘルプを更新します。

にはさまざまなヘルプ オプションがありますGet-helpGet-processたとえば、の機能とその正確な構文を知りたい場合は、次のように入力します。

Get-Help Get-Process

get-help コマンドの PowerShell ウィンドウに表示されるさまざまな例。

5.取得プロセス

Get-Processは、ローカル デバイスまたはリモート コンピューター上のプロセスの完全な一覧を表にする重要な PowerShell コマンドです。

PowerShell の Get-Process コマンドは、すべてのコンピューター プロセスを一覧表示します。

より詳細なプロセス情報については、プロセス ID (PID) やプロセスの名前など、他のパラメーターを指定する必要があります。

PowerShell の Get-Process コマンドでプロセス名を指定します。

検出するプロセスを定義する際に含めることができる多くの特定のパラメーターがあります。

  • ファイル サイズを MB 単位で指定してプロセスを一覧表示する
  • 優先度に基づいてプロセスを一覧表示する
  • プロセスの所有者を見つける

6. サービスを受ける

Windows コンピューターには、多数の実行中のプログラムとプロセスがあります。Get-serviceこれらはタスク マネージャーで直接表示できますが、後で HTML に変換できる を使用して完全なリストを表示する方が簡単です。

サービスの完全なリストを含む PowerShell ウィンドウの Get-service コマンド。

必要なサービスの正確な名前を覚えていませんか? ワイルドカード記号 (*) と、思い出すことができるいくつかの文字を使用できます。

Get-service "xyz*"

PowerShell ウィンドウに入力されたイニシャル付きの Get-service。

、、Get-Service、および. _-DisplayName-DependentServices-InputObject-RequiredServices

7. インストールモジュールまたはインストールスクリプト

PowerShell は、 Microsoft Teams、McAfee Security、Bing Translator、最新のXbox ゲームなど、Windows ソフトウェアのソフトウェア パッケージをインストールするための最も安全なオプションの 1 つです。すべてのユーザーに対して PowerShell でサポートされているソフトウェアの完全なリストを取得するには、次のように入力します。

Get-AppxPackage -AllUsers

AppxPackage コマンドを取得して、PowerShell のパッケージの全リストを表示します。

より良い方法は、最新のソフトウェア パッケージのワンストップ リソースであるPowerShell ギャラリーで目的のパッケージを検索することです。見つかったら、Install-moduleInstall-Script、 などのコマンドを入力しますInstall-Package。以下は、マインスイーパ ゲームのインストールを示しています。

Install-Script -Name Minesweeper

Windows で PowerShell からマインスイーパ ゲームをインストールします。

パッケージが PowerShell を介してインストールされるまで、数秒または数分待ちます。後で Windows で使用できるようになります。

マインスイーパ パッケージのインストールが進行中です。

もう 1 つの便利なコマンドはFind-package、コンピューターまたは Web 上のソフトウェア パッケージを検索する です。

8.mkdir、md、rmdir

mkdirネイティブの PowerShell コマンドではありません。ただし、new-itemこの構文は DOS および Linux で非常に一般的であるため、ディレクトリを作成するために広く使用されているエイリアスです。mkdir任意の名前で使用すると、空のフォルダーが作成されます。

mkdir "name of your empty folder."

簡単なコマンドを使用して、新しく作成したフォルダーを PowerShell が指すようにしますcd

cd "name of the newly created folder."

PowerShell で mkdir コマンドを使用して新しいディレクトリを作成し、cd を使用してその新しいディレクトリを指定します。

新しく作成されたフォルダーは常にパスに沿って配置されますC:\Windows\System32が、 を使用しcdて別のフォルダーを指すことができます。

ファイル エクスプローラー System32 に表示される PowerShell コマンドを使用して作成された新しいフォルダー。

上記と同じ目的でmkdirで代用できます。mdディレクトリの内容を削除するには、rmdir(remove directory) コマンドを使用します。

rmdir "name of the folder with empty content."

空のフォルダーを作成および削除するために PowerShell ウィンドウで使用される md および rmdir コマンド。

9. 新品

mkdirやなどのエイリアスとは異なりmdNew-itemは PowerShell で新しい項目を作成してその値を設定するために使用される公式のコマンドレットです。ファイルとフォルダーの作成に加えて、それを使用してレジストリ キーとエントリを作成できます。

  • コマンドを使用して新しいディレクトリを作成するにはNew-item、次のように入力します。

New-item -Path "Directory path location\"-Name "Name of your choice"-Item Type "directory"

  • ディレクトリが作成されるとすぐに、New-itemそのフォルダ内に新しいファイルを配置できます。

New-item -path "Created directory path location\"-Name "File name.txt"-ItemType "file"-Value "insert any text of your choice."

テキストを含む新しいフォルダーとファイルを作成するために PowerShell で使用されている new-item コマンド。
  • 新しく作成されたファイルは、その宛先フォルダーにあります。
重要な Powershell コマンド ファイル エクスプローラーの新しい項目

10.アイテムの削除

などの拡張子を持つすべてのファイルを削除しますか? TXT、。DOC、。PDF、. WMV、フォルダから?まず、 を使用して正確なフォルダー パスを指定しcd、次に示すようにコマンドレットを使用しますRemove-Item

Remove-Item * -Include *(filetype) - Exclude *(any variable or number)"

PowerShell のフォルダーから項目を削除します。

上記の方法は、隠しファイルまたは読み取り専用ファイルを特定して削除したり、特殊文字を含むファイルを削除したりするのに非常に役立ちます。

11. Set-ExecutionPolicy

セキュリティ上の理由から、PowerShell には、構成ファイル、スクリプト、およびその他のパラメーターに影響する独自の実行ポリシーがあります。Set-executionPolicyこの安全機能は、既存の項目を上書きする などのフラグとともに コマンドを使用して実行できます-force。以下の構文に従います。

Set-ExecutionPolicy<br>[-ExecutionPolicy]<br>[[-Scope] ]<br>[-Force]<br>[-WhatIf]<br>[-Confirm]<br>[]

たとえば、Set-ExecutionPolicyコマンドを使用して Chocolatey ソフトウェアをインストールすると、次のコードのようになります。実行すると、Chocolatey の公式ソフトウェアがダウンロードされ、コンピューターにインストールされます。

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Set-ExecutionPolicy コマンドを使用して PowerShell に Chocolatey をインストールします。

12. Select-Object と Sort-Object

フォルダーまたはサブフォルダーに多数のファイルと拡張子がある場合は、定義済みのプロパティに基づいて昇順または降順で並べ替えまたは選択することができます。ここでコマンドレットを使用するSort-Objectと、Select-Object複数のオブジェクトを一度に再配置できます。

並べ替えと選択は、コンピューター上の既存のプロセスだけでなく、さまざまなフォルダー内の任意のファイルにも適用できます。以下は、メガバイト単位のワーキング セット (WS) サイズに基づいて最も重要な 10 個のプロセスを並べ替えて選択する例です。

Get-process | Sort-Object -Property WS | Select-Object - Last "Number of items"

PowerShell で定義済みの Get プロセスに基づいて、オブジェクトを選択して並べ替えます。

さまざまなファイルの履歴情報、メモ帳ファイル内に含まれるすべてのリスト項目の並べ替え、コンピューター上のさまざまなイベントの並べ替えなど、他のさまざまなパラメーターで並べ替えと選択を使用できます。

13. プロセスの開始と停止

Windows で新しいプロセスを開始する場合でも、既存のプロセスを停止する場合でも、PowerShell コマンドレットを使用してその目標をすばやく達成できます。

プロセスをすばやく終了するには、Stop-Processコマンドレットを使用します。次の例は、ワードパッドのプロセスを閉じる方法を示しています。

Stop-process -Name "Process or Application name"

Windows の PowerShell からワードパッド プロセスを停止します。

同様に、PowerShell ウィンドウから直接新しいアプリケーションを開始するには、Start-processコマンドレットと-FilePathフラグを入力します。

Start-Process -FilePath "Application name"

PowerShell でプロセスを開始して、ワードパッド アプリケーションを開きます。

14. サービスの一時停止と再開

実行中のサービスを開始または停止する代わりに、直接中断できます。このSuspend-serviceコマンドレットは使いやすく、現在使用していないサービスの RAM と CPU の使用量を減らすのに役立ちます。

Suspend-service -DisplayName "Service full name"

重要な Powershell コマンドによるサービスの中断

終了したサービスは、簡単なコマンドで後で再開できますResume-service。システムに悪影響を与えずに中断できるサービスがわからない場合は、次のコマンドを使用します。

Get-Service | Where-Object {$_.CanPauseAndContinue -eq "True"} | Suspend-Service -Confirm

PowerShell ウィンドウで中断できるサービスを中断します。

15.テストパス

プログラミングでファイル パスのエラーを回避したい場合は、構文のファイル パスが正確であることを確認する必要があります。ファイル エクスプローラーでいつでも確認できますが、これを確認するより正確な方法は、Test-pathコマンドレットを使用することです。コマンドレットは、特定のパスが存在するかどうかを単に “True” または “False” で返します。

Test-Path -Path "Path name"

基本的な Powershell コマンドのテストパス

コマンドを変更して、特定のファイルの可用性をテストし、レジストリ パスが正確かどうかを確認し、コンピュータに特定のファイル タイプ以外のファイルがあるかどうかを判断できます。

16. 待機プロセス

複数のプロセスが並行して実行されている場合、1 つまたは複数のプロセスが停止するのを待ってから、再度使用できるようにすることができます。コマンドWait-Processレットは非常に役立ちます。プロセスが停止する前に PowerShell が待機するタイムアウトを指定できます。

Wait-Process -Name "Process name, -Timeout (in seconds)

重要な Powershell コマンドの待機プロセス

その他の重要な PowerShell コマンド

上記の PowerShell コマンドとは別に、次のコマンドレットと関数を習得することも役立ちます。

  • EchoPowerShell コンソールに任意の値を出力するために使用されるコマンドレットです。
  • Get-HostWindows で PowerShell をホストするプログラムの詳細を提供します。
  • Test-JSON文字列が有効な JSO オブジェクトかどうかをテストするために使用される高度なコマンドレットです。
  • Trace-command式またはコマンド全体をトレースして、含まれているパラメータとフラグを見つけます
  • Write-outputは、その名前が示すように、最後のコマンドの出力をコンソール ウィンドウに表示します。

よくある質問

「コマンドレットの名前として認識されない PowerShell スクリプト」エラーを解決するにはどうすればよいですか?

PowerShell がコマンドレットの名前を認識しない場合は、Path 変数が正しく設定されていないことが原因である可能性があります。無効なフォルダー パスを修正して、パス変数エラーを修正します。

PowerShell でエラー出力を変数としてキャプチャするにはどうすればよいですか?

PowerShell には、さまざまなコマンドレットを入力したときにすべてのエラー出力をキャプチャするように設計されたエラー変数パラメーターが$ErrorVariableあります。これらはトラブルシューティングに使用できます。

画像クレジット: DepositPhotos . Sayak Boralによるすべてのスクリーンショット

  • フェイスブック
  • つぶやき

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です