如何在cmd / bat上编写此PowerShell代码?
Get-ChildItem -Path "$Pwd\text\*.txt" | ForEach-Object -Process
{
$filename = $_ | Select-Object -ExcludeProperty Name
Start-Process notepad.exe -ArgumentList $filename -Wait
}
答案 0 :(得分:1)
for %A in ("c:\somefolder\*.txt") do start "" /w notepad %A
逐个打开记事本中的所有文本文件。在命令提示符下键入批处理文件和%A时使用%% A.
答案 1 :(得分:0)
要从命令行运行powershell脚本,您可以执行以下操作:
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "insert your code here"
e.g。
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "Get-ChildItem -Path ('{0}\text\*.txt' -f $Pwd) | ForEach-Object -Process { $filename = $_ | Select-Object -ExcludeProperty Name; Start-Process notepad.exe -ArgumentList $filename -Wait;}"
最好,坚持进入.ps1
文件,然后执行:
@powershell -NoProfile -ExecutionPolicy unrestricted -File .\MyScript.ps1
注意:-NoProfile -ExecutionPolicy unrestricted
在上述帖子中是可选的;我倾向于发现它对大多数功能都有用,但并不总是需要它。将执行策略设置为不受限制被认为是不好的做法,但如果您自己编写所有代码,那应该没问题。