从 txt 文件中读取值以与复制项一起使用



请提供一些帮助,我有一个文本文件,其中包含以下值config.txt

[路径] 源路径="y:\企业\团队\输入" TempPath="y:\enterprise\team\temp" DestPath="y:\enterprise\team\Output">

我想有一个脚本,它可以从配置文件中读取,并将任何文件从一个目标移动到下一个目标

copy-item 'sourcepath' destination = temppath

Powershell的新手,所以任何帮助都会很棒!

使用 PowerShell 处理任何 INI 文件

您可以使用此功能。

function Get-IniContent ($filePath)
{
$ini = @{}
switch -regex -file $FilePath
{
“^[(.+)]” # Section
{
$section = $matches[1]
$ini[$section] = @{}
$CommentCount = 0
}
“^(;.*)$” # Comment
{
$value = $matches[1]
$CommentCount = $CommentCount + 1
$name = “Comment” + $CommentCount
$ini[$section][$name] = $value
} 
“(.+?)s*=(.*)” # Key
{
$name,$value = $matches[1..2]
$ini[$section][$name] = $value
}
}
return $ini
}

若要将信息拉入 PowerShell,需要导入数据。 对于纯文本文件,获取内容是典型的方法。 如另一个答案中所述,文本文件采用 INI 格式,因此您需要对其进行操作才能使其在您的脚本中可用。

一个问题是,您是否将 config.txt 文件用于其他目的? 如果它仅适用于这一个脚本,那么我建议只在主脚本中将三个路径声明为变量。

如果它用于其他系统并且需要保持该格式,则需要弄清楚如何解析每一行。Get-Content会将其作为数组拉入,以便您可以浏览每一行。

如果它用于其他系统并且您可以更改格式,我建议切换到 CSV,每列都是不同的路径名。 然后,如果您使用导入CSV,则可以执行$variable。源路径,$variable。TempPath和$variable。目的地路径。

相关内容

最新更新