powershell打开一个始终在变化的文件名

时间:2017-03-01 22:21:35

标签: powershell

我试图将我的powershell脚本放在Windows任务调度程序中,这样我就可以安排它每月打开一个excel文件,而不需要我的输入。我遇到的问题是文件名每个月都会更新并更新日期。那么如何使用powershell脚本打开正确的文件呢?

我目前的脚本如下:

$objectExcel = new-object -c excel.application $objectExcel.displayAlerts=$false $objectExcel.visible=$FALSE $main=$objectExcel.workbooks.open("P:\report.xlsm")

这会打开一个名为Report的xlsm文件。

3月份,当我更新报告时,我会将其重命名为Report201702。当我在四月份更新报告时,我会将其重命名为Report201703。

如何编写我的powershell脚本,以便自动将dateformat附加到文件名中,或者让我总是获取最新文件。

2 个答案:

答案 0 :(得分:1)

只需使用自定义格式的Get-Date

$report = "report{0}.xlsm" -f (Get-Date -format yyyyMM)

答案 1 :(得分:1)

或者,找到最新的文件将名称保存到变量并打开它。

$report = Get-ChildItem P:\*.xlsm | sort lastwritetime | select -Last 1
$main = $objectExcel.workbooks.open($report.fullname)