macOS で Powershell - rehabilitation 編 -2 : 環境変数
Env は PSDrive のプロバイダの一つ。
PS /Users/hoge> get-psdrive Name Used (GB) Free (GB) Provider Root Current Locatio n ---- --------- --------- -------- ---- ------- / 291.38 173.74 FileSystem / ...hoge Alias Alias Env Environment Function Function Variable Variable PS /Users/hoge>
なので Get-ChiledItem してみる。
PS /Users/hoge> gci env: | format-list Name : _ Value : /usr/local/bin/pwsh Name : __CF_USER_TEXT_ENCODING Value : 0x1F5:0x1:0xE Name : Apple_PubSub_Socket_Render Value : /private/tmp/com.apple.launchd.PN8TixRg7E/Render Name : COMMAND_MODE Value : unix2003 Name : GROOVY_HOME Value : /Users/hoge/.sdkman/candidates/groovy/current Name : HOME Value : /Users/hoge Name : LANG Value : ja_JP.UTF-8 Name : LOGNAME Value : hoge Name : PATH Value : /usr/local/microsoft/powershell/6:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/loca l/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Comma nds:/Applications/Xamarin Workbooks.app/Contents/SharedSupport/path-bin:/Users/hoge/ .sdkman/candidates/groovy/current/bin Name : PSModulePath Value : /Users/hoge/.local/share/powershell/Modules:/usr/local/share/powershell/Modules:/usr /local/microsoft/powershell/6/Modules Name : PWD Value : /Users/hoge Name : SDKMAN_CANDIDATES_API Value : https://api.sdkman.io/2 Name : SDKMAN_CANDIDATES_DIR Value : /Users/hoge/.sdkman/candidates Name : SDKMAN_DIR Value : /Users/hoge/.sdkman Name : SDKMAN_PLATFORM Value : Darwin Name : SDKMAN_VERSION Value : 5.7.3+337 Name : SHELL Value : /bin/bash Name : SHLVL Value : 2 Name : SSH_AUTH_SOCK Value : /private/tmp/com.apple.launchd.5dmj0JEs17/Listeners Name : TERM Value : xterm-256color Name : TERM_PROGRAM Value : vscode Name : TERM_PROGRAM_VERSION Value : 1.32.3 Name : TMPDIR Value : /var/folders/xj/qkbp11_91mg0blbzgp2tmcw80000gn/T/ Name : USER Value : hoge Name : XPC_FLAGS Value : 0x0 Name : XPC_SERVICE_NAME Value : 0 PS /Users/hoge>
環境変数 PATH の参照。
PS /Users/hoge> gci env:PATH | format-list Name : PATH Value : /usr/local/microsoft/powershell/6:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/loca l/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Comma nds:/Applications/Xamarin Workbooks.app/Contents/SharedSupport/path-bin:/Users/hoge/ .sdkman/candidates/groovy/current/bin PS /Users/hoge>
つながって見にくいので、PATH 毎に改行いれてみた。
PS /Users/hoge> gci env:PATH |%{ $_.value -replace ( ":","`n" ) } /usr/local/microsoft/powershell/6 /usr/bin /bin /usr/sbin /usr/local/share/dotnet ~/.dotnet/tools /Library/Frameworks/Mono.framework/Versions/Current/Commands /Applications/Xamarin Workbooks.app/Contents/SharedSupport/path-bin /Users/hoge/.sdkman/candidates/groovy/current/bin PS /Users/hoge>
変数 $env としても参照できる。同じ PATH 見てもつまらない(?)ので PSModulePath。
PS /Users/hoge> $env:PSModulePath |%{ $_ -replace (":","`n")} /Users/hoge/.local/share/powershell/Modules /usr/local/share/powershell/Modules /usr/local/microsoft/powershell/6/Modules PS /Users/hoge>