将文件的完整路径分配给变量 Powershell

Assign full path of the file to a variable Powershell

我正在为 windows 创建一个脚本。 想法是使用任务管理器将其安排到每天。 困难在于我想让这个脚本可移植,所以只要有人在他们的计算机上运行它,它就应该可以工作。我需要使路径不是“硬编码”,这样文件就可以在下载的任何地方找到。

Write-Host "Windows1"


$pathname= get-childitem "C:\Users\" -recurse | Where-Object {$_.name  -Like "ScheduledUpdateAndScan.ps1"} 

$action = New-ScheduledTaskAction -Execute 'Powershell.exe' -Argument $pathname

$trigger =  New-ScheduledTaskTrigger -Daily -At 11am

Register-ScheduledTask -Action $action -Trigger $trigger -TaskName "Windows1" -Description "Windows1 daily scan routine and check for updates"

但是 $pathname 不会采用完整路径

enter image description here

只取文件的实际名称 如果可以,请帮助我

您没有传递完整路径。

$pathname= get-childitem "C:\Users\" -recurse | Where-Object {$_.name  -Like "ScheduledUpdateAndScan.ps1"} 

变量$pathname 包含一个文件信息对象。它有很多属性,其中之一是 call FullName。您应该在命令中指定它。

$action = New-ScheduledTaskAction -Execute 'Powershell.exe' -Argument $pathname.FullName