是否可以编写自修改的PowerShell脚本?
假设我有一个名为foo.ps1
的脚本:
"Write-Host `"Goodbye world`"" | Set-Content "foo.ps1"
Write-Host "Hello world"
此脚本打印出Hello world
。我可以使用哪些技术来打印Goodbye world
?
答案 0 :(得分:1)
对我而言,没有任何意义,在您修改了脚本之后,您需要对其进行重新点源以获取新的声明。
此脚本自行更改三次:
Write-Host "Hello world" "Write-Host `"Goodbye world`"" | Set-Content "foo.ps1" . .\foo.ps1 "Write-Host `"Is really useful?`"" | Set-Content "foo.ps1" . .\foo.ps1
并打印:
Hello World Goodbye World Is really useful?
另一种可能性是编写一个脚本,接受脚本块作为输入参数。
答案 1 :(得分:-1)
是的,但是我会有更好的方法去做你想做的事。
C:(...)WindowsPowerShell >.\foo.ps1
Hello world
C:(...)WindowsPowerShell >.\foo.ps1
Goodbye world
C:(...)WindowsPowerShell >