我有搜索了一会儿,来到了结论,###PSLOC
是只是惯例,并没有特殊的含义,即使我无法找到一个正式文件。
我发现了一些微软的文档,导致我得出这个结论。例如:“Microsoft基准配置分析器型号创作指南”显示,第20页此示例:
示例内容文件
下面的是防病毒模型的内容文件的例子:Antivirus.psd1
# Only add new (name,value) pairs to the end of this table
# Do not remove, insert or re-arrange entries
ConvertFrom-StringData @'
###PSLOC start localizing
#
# helpID="ScanBootSector"
#
ScanBootSector_title = Boot Sector Scan (Indicator Setting {0})
ScanBootSector_problem = tbd: Problem for Constant name issue-1
ScanBootSector_impact = tbd: Impact for Constant name issue-1
ScanBootSector_resolution = tbd: Resolution for Constant name issue-1
ScanBootSector_compliant = tbd: Compliant for Constant name issue-1
#
# helpID="AutoUpdateStatus"
#
AutoUpdateStatus_title = Auto Update Status (Indicator Setting {0})
AutoUpdateStatus_problem = tbd: Problem for Constant name issue-2
AutoUpdateStatus_impact = tbd: Impact for Constant name issue-2
AutoUpdateStatus_resolution = tbd: Resolution for Constant name issue-2
AutoUpdateStatus_compliant = tbd: Compliant for Constant name issue-2
'@
注意,后跟一个附加说明,更简单的评论###PSLOC
并没有结束###PSLOC
。
由Bryan P. Cafferky撰写的书“用于数据库开发人员的Pro PowerShell” 140 ConvertFrom-StringData部分根本不包含###PSLOC
块/标签。
另一条线索来自于我自己的Windows 10系统。
我grepped所有* .psd1文件,并了解到一些没有适当的关闭###PSLOC
- 块/标签,但###PSCLOCC
insead,例如。 C:\ WINDOWS \ WinSxS文件\ Amd64_microsoft窗口 - pnpdevice-powershell_31bf3856ad364e35_10.0.15063.0_none_e99b05a055a1e6c4 \ PnpDevice.Resource.psd1(这可能是一个错误以及)。
最后,我搜索了Powershell(核心)回购,但找不到###PSLOC
的任何处理。
因此,案件不是100%清楚。但可以说我找到了一些很好的证据表明它没有特别的意义。
一如既往在PoSh代码中'''表示一个评论。 – LotPings
@LotPings并不总是,例如'require'声明。我不认为这只是一个评论,或者如果它是,那么我很好奇它是什么意思传达。 –
即使这个需求被包装/隐藏在注释中,也不会影响早期的PowerShell版本。国际海事组织'### PSLOC'是一些自动化的残余。 – LotPings