2013-03-21 51 views
0

我不是一个编码员,而是试图通过自己承担简单任务来帮助我的开发团队,其中之一是设置一个Windows计划任务,通过Powershell导出我们的mongodb组件。在http://docs.mongodb.org/manual/administration/import-export/的帮助以及一些试验和错误(以及开发者朋友的一些疑难解答帮助)的帮助下,我已经能够编写一些Powershell命令行,在PowerShell中手动执行时成功导出相关的Mongodb集合:如何将mongodb导出的powershell命令行更改为Powershell脚本(用于计划的任务目的)

cd c:\mongobinlocation 

.\mongoexport --db db --collection collection1 --jsonArray --out "\\server\archivelocation\collection1.json" 

.\mongoexport --db db --collection collection2 --jsonArray --out "\\server\archivelocation\collection2.json" 

.\mongoexport --db db --collection collection3 --jsonArray --out "\\server\archivelocation\collection3.json" 

不过,我则在试图建立一个计划任务在PowerShell中运行该脚本(这里使用说明:http://www.ilovepowershell.com/how-to-run-powershell-script-as-scheduled-task/)设置 ,并意识到,我已经设置了PowerShell命令行不等同于PowerShell脚本可以在计划任务中运行。我正在寻找一个基本模板示例,我可以修改它来插入上面的命令行,但我没有运气 - 我看到的所有内容都与我的小命令行完全不同。有什么办法可以将上述命令包装为基本的东西,还是必须从头开始学习如何编写Powershell脚本?

感谢您的任何和所有帮助,我感谢您的时间!

+0

你写的''.bat'文件会很好 - 那里看起来没有任何PowerShell命令。您可以将文件保存为'.bat',然后创建计划任务以运行它 - 无需使用模板! – 2013-03-21 05:14:08

+0

非常感谢,西蒙 - 这正是我需要知道的。我完全按照您的指示进行了操作,它看起来完美无缺。再次感谢! – LuckyBuckeye 2013-03-21 06:41:40

回答

0

我还没有使用任何计划任务。我需要学习它们。由于我对调度任务一无所知,因此将我的调度放入PowerShell脚本中。

While($true){ #Easily replaced by a for-loop 
    ... #your script 
    Start-Sleep (60*60*24) 
    #I prefer to use "timeout /t <seconds>" 
} 

如果您在没有重新启动的服务器上执行此操作,您将执行一个简单的计划任务。如果您真的想学习使用PowerShell检查Workflows。

+0

谢谢,鲍勃。我将使用上面Simon提出的.bat文件,但我感谢您的评论,并将在未来记住它 - 我确实希望提高我的知识水平,我相信这将在未来得心应手。再次感谢! – LuckyBuckeye 2013-03-21 06:43:52

相关问题