任务计划程序中的Powershell脚本 - 空格和时间戳问题

时间:2014-06-05 13:41:47

标签: powershell windows-7 scheduled-tasks

以下脚本在Powershell中工作,但在作为任务计划程序中的操作执行时不起作用:

Copy-Item -Path '\\dfs.com\Risk Manage\Daily_DB\Daily_DB.accdb' -Destination "\\dfs.com\Risk Manage\SharedReports\Database Backup 2014\Daily_DB_backup $(get-date -f yyyy-MM-dd).accdb"

请注意,我需要使用双引号才能将$(get-date -f yyyy-MM-dd)转换为时间戳。不适用于单引号。

任务计划程序错误消息: Copy-Item:找不到接受参数'Manage \ SharedReports \ Database'的位置参数。

总结一下,有没有人知道如何在任务计划程序中执行包含空格和时间戳的路径的Powershell脚本?

非常感谢

2 个答案:

答案 0 :(得分:0)

您可以调用脚本或使用-encodedcommand参数:Using Powershell -encodedcommand to pass parameters

答案 1 :(得分:0)

试试这个:

$Datestamp = (Get-date -f yyyy-MM-dd)
Copy-Item -Path '\\dfs.com\Risk Manage\Daily_DB\Daily_DB.accdb' -Destination "\\dfs.com\Risk Manage\SharedReports\Database Backup 2014\Daily_DB_backup_$Datestamp.accdb"