我需要验证复制到目的地的文件是否存在,文件格式如下:
的 SuperFile_yyyyMMdd_randomstring.txt
我试图做的是以下内容:
$FileDate = Get-Date -format yyyyMMdd
$FileExists = (Test-Path "\\UNC\TestShare\SuperFile_$FileDate_*")
但是,复制与第一部分 SuperFile _ 匹配的所有文件,而不仅仅是与日期匹配的文件。此文件每天创建,我想忽略任何其他不包含今天日期的文件。我曾尝试进行Get-ChildItem查询并将其输入到我的支票中,但它从未返回任何文件
所以我的问题是复制和验证我刚才复制的文件存在于目的地
谢谢你的帮助。
答案 0 :(得分:3)
_
是变量名的有效字符,因此表达式$FileDate_
已被定义,未定义。这可以通过使用子表达式来防止:
$FileDate = Get-Date -format yyyyMMdd
$FileExists = (Test-Path "\\UNC\TestShare\SuperFile_$($FileDate)_*")
或将变量名称放在花括号中:
$FileDate = Get-Date -format yyyyMMdd
$FileExists = (Test-Path "\\UNC\TestShare\SuperFile_${FileDate}_*")