gpt4 book ai didi

powershell - 在 powershell 脚本中使用 "starts with"而不是包含?

转载 作者:行者123 更新时间:2023-12-05 02:24:11 28 4
gpt4 key购买 nike

在我当前的 powershell 脚本中,我有带值的哈希表。我正在使用这种语法

$x = $f.contains("$k")

但我最近发现这种方法有问题我想知道 powershell 是否有“开始于”或相关的东西,它会搜索哈希表“开始于”而不是 包含

哈希表的例子:

"bio.txt" = "server1\datafiles\bio";
etc.......

编辑 来自评论的样本

foreach ($key in $filehash.keys) { 
$path = $filehash.get_Item($key)
$filecount = 0
foreach ($file in $FileArray) {
if ($file.LastWriteTime -lt($(GetDate).adddays(-1))) {
[string] $k = $key.ToLower()
[string] $f = $file.name.ToLower()
if ($x = $f.contains("$k")) { }
}
}
}

最佳答案

尝试使用 -like 来检查字符串是否以 yourvalue 开头。我在评论中重写了您的示例以使用它:

$filehash.GetEnumerator() | foreach {
#$_ is now current object from hashtable(like foreach)
#$_.key is key and $_.value is path
$filecount = 0
foreach ($file in $FileArray) {
if ( ($file.LastWriteTime -lt $((Get-Date).AddDays(-1))) -and ($file.name -like "$($_.Key)*") ) {
#process file

}
}
}

关于powershell - 在 powershell 脚本中使用 "starts with"而不是包含?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15004627/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com