windows:powershell:commands:get-command

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
windows:powershell:commands:get-command [2020/03/25 15:06] ともやんwindows:powershell:commands:get-command [2022/06/04 04:11] (現在) ともやん
行 1: 行 1:
-<html> 
-  <style> 
-    #result pre { 
-      overflow: scroll; 
-      overflow-x: hidden; 
-      font-size: 10px; 
-    } 
-    #result_long pre { 
-      height: 300px; 
-      overflow: scroll; 
-      overflow-x: hidden; 
-      font-size: 10px; 
-    } 
-  </style> 
-</html> 
 ====== Get-Command (alias: gcm) ====== ====== Get-Command (alias: gcm) ======
 現在のセッションで使用できるコマンドを取得する。\\ 現在のセッションで使用できるコマンドを取得する。\\
-\\ + 
-**Windows 10**\\ +===== which コマンド (Linux) として利用 ===== 
-\\ +**which** コマンドは、PATH に登録されているディレクトリにある実行可能ファイルを、PATH の登録順で最初に見つかったファイルだけを表示する。\\ 
-which コマンドとして利用\\+ 
 +Windows の PowerShell の場合。\\ 
 +<WRAP prewrap 100%>
 <code powershell> <code powershell>
-PS > Get-Command python | Select-Object Source+Get-Command python | Select-Object Source
 </code> </code>
 +or 
 +<code powershell>
 +$ gcm python | select Source
 +</code>
 +<WRAP>
 <WRAP prewrap 100% #result> <WRAP prewrap 100% #result>
 <code powershell> <code powershell>
行 28: 行 20:
 Source Source
 ------ ------
-C:\Python38\python.exe+C:\Users\tomoyan\scoop\apps\python\current\python.exe
 </code> </code>
 +</WRAP>
  
-PowerShell の Cmdlet など調べる。\\+Linux の [[linux:powershell|PowerShell]] では、**which** を使うこともできるし、**Get-Command (alias: gcm)** 使うこともできる。\\ 
 +<WRAP prewrap 100%>
 <code powershell> <code powershell>
-PS > Get-Command+$ which python 
 +/usr/bin/python 
 + 
 +$ gcm python | select Source 
 + 
 +Source 
 +------ 
 +/usr/bin/python 
 +</code> 
 +</WRAP> 
 + 
 +Windows のコマンドプロンプトでは、もともと **where** コマンドが使える🤔\\ 
 +<WRAP prewrap 100%> 
 +<code batch> 
 +> where python 
 +</code> 
 +</WRAP> 
 +<WRAP> 
 +<WRAP prewrap 100% #result> 
 +<code batch> 
 +C:\Users\tomoyan\scoop\apps\python\current\python.exe 
 +C:\Users\tomoyan\scoop\shims\python.exe 
 +C:\Users\tomoyan\AppData\Local\Microsoft\WindowsApps\python.exe 
 +</code> 
 +</WRAP> 
 + 
 +しかし、Windows の PowerShell では、**where** コマンドは Alias の関係で使えない😅\\ 
 +<WRAP prewrap 100%> 
 +<code powershell> 
 +$ where python 
 +
 +</code> 
 +</WRAP> 
 + 
 +Alias は **where** が **Where-Object** の別名になっているためである。(コマンドプロンプトのように PowerShell を利用すると混乱する😅💦)\\ 
 +<WRAP prewrap 100%> 
 +<code powershell> 
 +$ gal where 
 +</code> 
 +</WRAP> 
 +<WRAP prewrap 100% #result> 
 +<code powershell> 
 + 
 +CommandType     Name                                               Version    Source 
 +-----------     ----                                               -------    ------ 
 +Alias           where -> Where-Object 
 +</code> 
 +</WRAP> 
 + 
 +Windows の PowerShell では、**where.exe** とすると使える🙄\\ 
 +<WRAP prewrap 100%> 
 +<code powershell> 
 +$ where.exe python 
 +</code> 
 +</WRAP> 
 +<WRAP prewrap 100% #result> 
 +<code powershell> 
 +C:\Users\tomoyan\scoop\apps\python\current\python.exe 
 +C:\Users\tomoyan\scoop\shims\python.exe 
 +C:\Users\tomoyan\AppData\Local\Microsoft\WindowsApps\python.exe 
 +</code> 
 +</WRAP> 
 + 
 +Windows の **where** コマンドは、以下に存在している🤯\\ 
 +<WRAP prewrap 100%> 
 +<code powershell> 
 +$ gcm where.exe 
 +</code> 
 +</WRAP> 
 +<WRAP prewrap 100% #result> 
 +<code powershell> 
 + 
 +CommandType     Name                                               Version    Source 
 +-----------     ----                                               -------    ------ 
 +Application     where.exe                                          10.0.2020… C:\WINDOWS\system32\where.exe 
 +</code> 
 +</WRAP> 
 + 
 +Windows の PowerShell で **where** コマンドは容量だけ食って使い物にならなくなった😒ので、**where.exe** の別名として **which** を登録しておくと良い😁\\ 
 +<WRAP prewrap 100%> 
 +<code powershell> 
 +$ echo "sal which where.exe" >> $profile 
 +$ . $profile 
 +$ which python 
 +</code> 
 +</WRAP> 
 +<WRAP prewrap 100% #result> 
 +<code powershell> 
 +C:\Users\tomoyan\scoop\apps\python\current\python.exe 
 +C:\Users\tomoyan\scoop\shims\python.exe 
 +C:\Users\tomoyan\AppData\Local\Microsoft\WindowsApps\python.exe 
 +</code> 
 +</WRAP> 
 + 
 +もしくは、[[windows:scoop|Scoop]] の [[windows:gow|Gow]] または [[windows:busybox|BusyBox]] をインストールすると **which** コマンドが使えるようになる😍\\ 
 +[[windows:gow|Gow (Gnu On Windows) - Linux コマンド群 (Cygwin 軽量版)]]\\ 
 +[[windows:busybox|BusyBox - UNIXコマンド詰め合わせセット🤤]]\\ 
 + 
 +===== Windows 10 ===== 
 +PowerShell の Cmdlet, Function, Alias などを調べる。\\ 
 +<code powershell> 
 +$ gcm Get-Command 
 +</code> 
 +<WRAP prewrap 100% #result> 
 +<code powershell> 
 + 
 +CommandType     Name                                               Version    Source 
 +-----------     ----                                               -------    ------ 
 +Cmdlet          Get-Command                                        7.0.3.0    Microsoft.PowerShell.Core 
 + 
 +</code> 
 +</WRAP> 
 + 
 +PowerShell モジュール内のコマンドを一覧する。\\ 
 +<code powershell> 
 +$ gcm -Module Microsoft.PowerShell.Management 
 +</code> 
 +<WRAP prewrap 100% #result_long> 
 +<code powershell> 
 + 
 +CommandType     Name                                               Version    Source 
 +-----------     ----                                               -------    ------ 
 +Cmdlet          Add-Content                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Clear-Content                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Clear-Item                                         7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Clear-ItemProperty                                 7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Clear-RecycleBin                                   7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Convert-Path                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Copy-Item                                          7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Copy-ItemProperty                                  7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Debug-Process                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-ChildItem                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-Clipboard                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-ComputerInfo                                   7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-Content                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-HotFix                                         7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-Item                                           7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-ItemProperty                                   7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-ItemPropertyValue                              7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-Location                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-Process                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-PSDrive                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-PSProvider                                     7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-Service                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Get-TimeZone                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Invoke-Item                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Join-Path                                          7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Move-Item                                          7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Move-ItemProperty                                  7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          New-Item                                           7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          New-ItemProperty                                   7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          New-PSDrive                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          New-Service                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Pop-Location                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Push-Location                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Remove-Item                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Remove-ItemProperty                                7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Remove-PSDrive                                     7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Remove-Service                                     7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Rename-Computer                                    7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Rename-Item                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Rename-ItemProperty                                7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Resolve-Path                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Restart-Computer                                   7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Restart-Service                                    7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Resume-Service                                     7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-Clipboard                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-Content                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-Item                                           7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-ItemProperty                                   7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-Location                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-Service                                        7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Set-TimeZone                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Split-Path                                         7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Start-Process                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Start-Service                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Stop-Computer                                      7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Stop-Process                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Stop-Service                                       7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Suspend-Service                                    7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Test-Connection                                    7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Test-Path                                          7.0.0.0    Microsoft.PowerShell.Management 
 +Cmdlet          Wait-Process                                       7.0.0.0    Microsoft.PowerShell.Management 
 + 
 +</code> 
 +</WRAP> 
 + 
 +<code powershell> 
 +$ gcm
 </code> </code>
 <WRAP prewrap 100% #result_long> <WRAP prewrap 100% #result_long>
行 1881: 行 2063:
 </WRAP> </WRAP>
  
-**Fedora 31**\\+===== Fedora 31 =====
 <code powershell> <code powershell>
 PS > Get-Command PS > Get-Command
行 2161: 行 2343:
 </code> </code>
 </WRAP> </WRAP>
 +
 +===== 参考文献 =====
 +[[https://docs.microsoft.com/ja-jp/powershell/module/microsoft.powershell.core/get-command|Get-Command (Microsoft.PowerShell.Core) - PowerShell | Microsoft Docs]]\\
  
  • windows/powershell/commands/get-command.1585116375.txt.gz
  • 最終更新: 2020/03/25 15:06
  • by ともやん