![power shell + 精确匹配第一个字段并捕获分隔符后的第二个字段](https://linux22.com/image/1572141/power%20shell%20%2B%20%E7%B2%BE%E7%A1%AE%E5%8C%B9%E9%85%8D%E7%AC%AC%E4%B8%80%E4%B8%AA%E5%AD%97%E6%AE%B5%E5%B9%B6%E6%8D%95%E8%8E%B7%E5%88%86%E9%9A%94%E7%AC%A6%E5%90%8E%E7%9A%84%E7%AC%AC%E4%BA%8C%E4%B8%AA%E5%AD%97%E6%AE%B5.png)
我们有以下文件(files.sum)
第一个字段是文件的名称
第二个字段是分隔符
第三个领域是总和
configuration.txt:2327432786
config.csv:458349573
config.csv1:446433543
mod_binaries.txt:475327527
mod_bin:2358934573875
我们想要捕获文件的总和 - config.csv
所以
$SUM 将是第三个必需值 - 458349573
可以根据文件名给出总和值的 power shell cli 是什么?
答案1
这可以通过分裂命令。您可以简单地循环遍历 files.sim 中的每一行,用“:”作为分隔符进行分隔,然后检查结果数组中的 0 个元素是否等于您的文件名,如果是,则将 $sum 设置为当前数组中的 1 个元素。以下是示例:
$file = 'config.csv'
$seperator = ':'
foreach($line in Get-Content .\files.sum) {
$NameAndSum = $line.split($seperator)
if($NameAndSum[0] -eq $file){
$Sum = $NameAndSum[1]
}
}
echo $file$seperator$sum