我正在尝试通过DSC配置目标节点.
我创建了一个带有虚拟配置的.ps1文件; 你可以在下面看到它; 它只是您在DSC站点中找到的第一个示例之一.
现在我想将它编译成.mof文件.我执行了:
PS C:\var\DSC\Configurations> . .\localhost.ps1
Run Code Online (Sandbox Code Playgroud)
但它什么都没做.mof文件不会出现,也不会抛出任何错误消息.我错过了什么?
Configuration FileResourceDemo
{
Node "localhost"
{
File DirectoryCopy
{
Ensure = "Present" # You can also set Ensure to "Absent"
Type = "Directory" # Default is "File".
Recurse = $true # Ensure presence of subdirectories, too
SourcePath = "C:\Users\Public\Documents\DSCDemo\DemoSource"
DestinationPath = "C:\Users\Public\Documents\DSCDemo\DemoDestination"
}
Log AfterDirectoryCopy
{
# The message below gets written to the Microsoft-Windows-Desired State Configuration/Analytic log
Message = "Finished running the file resource with ID DirectoryCopy"
DependsOn = "[File]DirectoryCopy" # This means run "DirectoryCopy" first.
}
}
}
Run Code Online (Sandbox Code Playgroud)
的Configuration关键字唯一定义的结构(可以把它像function关键字).之后你必须通过像函数一样调用它来执行它(它甚至可以有参数,尽管你的参数没有).
因此,如果在.ps1文件末尾添加:
FileResourceDemo
Run Code Online (Sandbox Code Playgroud)
它将在定义后立即执行.
或者,由于您是根据您的问题点源文件,您可以通过FileResourceDemo在提示符中键入来直接执行它.它甚至应该完成.