powershell - 在 Powershell 中检查环境变量值
问题描述
我正在尝试检查系统是否具有包含特定字符串的特定环境变量值;例如:
C:\Program Files\Java\jre1.8.0_271\bin
我找到了如何检查环境变量是否存在:
if ([Environment]::GetEnvironmentVariable('path', 'Machine'))
{
"Exist in the system!"
}
这可行,但我需要知道如何检查该值是否包含特定的子字符串。
解决方案
你可以试试 :
$pathContent = [Environment]::GetEnvironmentVariable('path', 'Machine')
$myPath = "C:\WINDOWS\system32"
if ($pathContent -ne $null)
{
# "Exist in the system!"
if ($pathContent -split ';' -contains $myPath)
{
# My path Exists
Write-Host "$myPath exists"
}
else
{
Write-Host "$myPath does not exist"
}
}
-split
运算符生成一个字符串数组,其中运算-contains
符 test if$myPath
位于其中。
推荐阅读
- angular - Ionic 3 中的事件问题
- installation - Inno Setup:在安装开始前显示自定义页面
- json - Swagger - 无法引用 JSON 文件
- javascript - Async/Await Axios 返回承诺而不是数据?
- python - Pandas Formatting:选择性地缩进某些行中的单元格
- c# - Json.Net 可以将反序列化的对象转换为嵌入在 Json 中的类型吗?
- android - 模拟蓝牙设备
- c++ - 共享指针和回调注册的结构。由于我以外的原因调用回调时,原始指针值发生了变化
- python-sphinx - 在 readthedocs 网站上自定义 doc 主题构建
- ruby-on-rails - 更改页面后 React On Rails 和 Redux 丢失 Persist Store