我有一个更改文件名并将其移动到特定计算机的功能。该功能是为另一台计算机复制的,所以我现在每个文件名都有两个特定的功能。我似乎无法弄清楚如何让脚本选择我想要它使用的功能。这是我尝试过没有运气的事情:
$files = dir -Path \\server\PPTV\*\*.* -Include atrium.*, clirel.* -Recurse {
(If ($file.FullName -eq "atrium.*" | Rename-Copy-Atrium),
(If ($file.FullName -eq "clirel.*" | Rename-Copy-Clirel)))
}
如何才能将其传递给函数并运行?例如,Rename-Copy-Atrium是函数名称之一。
答案 0 :(得分:0)
powershell中if()
语句的正确语法是:
if([condition])
{
[execute this code]
}
所以你想做类似的事情:
$files = dir -Path \\server\PPTV\*\*.* -Include atrium.*, clirel.* -Recurse
foreach($file in $files)
{
if($file.FullName -like "atrium.*")
{
# I assume the function takes a fileinfo object as a parameter argument
Rename-Copy-Atrium $file
}
elseif($file.FullName -like "clirel.*")
{
Rename-Copy-Clirel $file
}
}