首页 > 解决方案 > SetEnvironmentVariable 来自 csv 单元格中保存的整数

问题描述

我有一个用例,我希望能够将端口号写入与正在运行脚本的 PC 名称匹配的系统环境变量。

为此,我有一个脚本在 2 列 csv 文件中查找计算机名,并将设备的相应端口号写入系统环境变量。问题是我无法获取将端口号添加到环境变量的脚本。如果我在最后一行的 $port 周围加上括号。添加了一个条目,但它添加了字符串 $port,而不是端口号。如果有人可以提供一些帮助,我将不胜感激。提前致谢。

$COMPUTERNAME = "$env:COMPUTERNAME"
$data = import-csv "C:\PS stuff\Port assign.csv" | Where-Object 
{$_."computer" -eq "$COMPUTERNAME"}
$data | Select -ExpandProperty "port" $port
[System.Environment]::SetEnvironmentVariable('TCP_PORT', "$port", 
[System.EnvironmentVariableTarget]::User)

标签: powershell

解决方案


$port=Import-Csv -Path 'C:\PS stuff\Port assign.csv'| Where-Object {$_.computer -eq "$COMPUTERNAME"}|Select -ExpandProperty "port"

推荐阅读