PowerShellのGet-ItemコマンドとGet-ItemPropertyコマンドの違い
目次
スポンサードリンク
Get-Itemコマンド
Get-Itemコマンドは、指定したパスにあるファイルやフォルダのオブジェクトを返すコマンドです。このコマンドを実行すると、「data.txt」ファイルのオブジェクトが返されます。ファイルオブジェクトからプロパティ情報を取得したり、ファイル自体のコピーなどオブジェクトを操作することができます。
PS C:\work> $File = Get-Item .\data.txt
PS C:\work> $File
ディレクトリ: C:\work
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2024/05/22 12:45 25 data.txt
PS C:\work>
PS C:\work> $File.CreationTime
2024年5月22日 12:45:14
PS C:\work> $File.CopyTo("C:\work\data2.txt")
PS C:\work> dir
ディレクトリ: C:\work
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 2024/05/22 12:45 25 data.txt
-a---- 2024/05/22 12:45 25 data2.txt
Get-ItemPropertyコマンド
Get-ItemPropertyコマンドはファイルの属性、バージョン情報、セキュリティ情報など、ファイルのプロパティ情報を取得できます。Get-ItemPropertyコマンドですが、変数に代入してファイルオブジェクトとして操作することもできるので、実質Get-Itemコマンドと同じように使うこともできます。
Get-ItemPropertyコマンドの特徴は、オブジェクトのプロパティを詳細に表示することに特化していることです。ファイルのメタデータだけでなく、レジストリの値やWMIオブジェクトのプロパティなども取得できます。
下記コマンドでは、CurrentVersionレジストリ キー内のレジストリ エントリの値の名前とデータを取得します。
PS C:\work> Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion
ProgramFilesDir : C:\Program Files
CommonFilesDir : C:\Program Files\Common Files
ProgramFilesDir (x86) : C:\Program Files (x86)
CommonFilesDir (x86) : C:\Program Files (x86)\Common Files
CommonW6432Dir : C:\Program Files\Common Files
DevicePath : C:\Windows\inf
MediaPathUnexpanded : C:\Windows\Media
ProgramFilesPath : C:\Program Files
ProgramW6432Dir : C:\Program Files
SM_ConfigureProgramsName : Set Program Access and Defaults
SM_GamesName : Games
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
PSChildName : CurrentVersion
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
下記コマンドでは、CurrentVersion レジストリ サブキーのProgramFilesDir レジストリ エントリの値の名前とデータを取得しています。
PS C:\work> Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion -Name "ProgramFilesDir"
ProgramFilesDir : C:\Program Files
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
PSChildName : CurrentVersion
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
コマンドプロンプトのポケットリファレンス:Windows11対応版
リンク
PowerShellの基礎を一通り学べるおすすめ書籍
リンク
Search
Recent Posts
- OpenSSHのエラー「bad ownership or modes for chroot directory component」の原因と解消方法
- Apacheの起動状態をチェックして停止してる場合にApacheを起動するシェルスクリプト
- Amazon LinuxのOSバージョンを調べる方法|/etc/redhat-release の代替ファイル
- MYSQLでダンプファイルを取得する際に発生したエラー「Couldn't execute 'SELECT BINLOG_GTID_POS('', '0')': You are not using binary logging (1381)」の原因と対処方法
- RHEL系Linuxでリポジトリを一覧表示するコマンド(dnf repolist)