Powershell函数中的字符串参数处理

时间:2016-04-21 09:57:36

标签: powershell

最近刚刚将我的脚趾(手指!)浸入到PowerShell中,因此Backup Exec正在寻求通过引入一个设置备份作业的功能来简化我的脚本,所以我开始使用:

function submitJob ($beDef,$beTask,$beTape,$beCMD,$beDup)
{
$beCmdLine="GET-BEBackupDefinition ""$beDef"" "
}

然后我用

调用该函数
submitJob "SS03ICT","Wednesday (01)","Tape drive 0002 LTO3","powershell SS03-Media Wednesday",$true

并且beCmdLine中的结果是

GET-BackupDefinition "SS03ICT Wednesday (01) Tape drive 0002 LTO3 powershell SS03-Media Wednesday True"

我可以看到所有参数都单独包含正确的值但是当我只使用第一个参数($ beDef)时,它会扩展为包含所有值。我只想命令命令以

开头
GET-BackupDefinition "SS03ICT"

提前致谢

1 个答案:

答案 0 :(得分:0)

首先有太多引号:

function submitJob ($beDef,$beTask,$beTape,$beCMD,$beDup)
{
   $beCmdLine="GET-BEBackupDefinition $beDef"
}

然后,你应该用空格分隔的参数调用你的函数,如下所示:

submitJob "SS03ICT" "Wednesday (01)" "Tape drive 0002 LTO3" "powershell SS03-Media Wednesday" $true