我一直在研究和测试PowerShell 2.0,并且越来越接近创建包含连接网络打印机的文本文件的脚本。所需的文本文件将具有计算机的名称,作为存储在网络位置的文本文件的名称,格式为以下格式。
\\print server name\ name of printer
\\print server name \name of printer2
\\print server name\name of printer3
到目前为止,我已经提出了bellow powershell 2.0脚本,根据PC的名称命名文本文件。但是我在获取txt文件的数据时遇到问题,无法以上述格式创建文本文件的数据。
要创建文件,我使用的是bellow powershell 2.0代码并获取波纹管输出文件
$ComputerName = "$env:computername"
Get-WmiObject -Class Win32_Printer -ComputerName $ComputerName | Out-File \\printer server\printPCmap$\$ComputerName.txt
Output:
Location :
Name : \\print server name\printer
PrinterState :
PrinterStatus : 3
ShareName : printer name
SystemName : \\print server name
然后,我可以使用bellow脚本获取新创建的文件,但无法让它以所需的格式重写文本文件。
Get-Content \\print server name\printPCmap$\$ComputerName.txt
然后使用| Select-String "\\"
我可以获得波纹管数据
Name : \\print server name\name of printer
SystemName : \\print server name
正如您所看到的,我与我希望1文本文件最终看起来有点不同。任何帮助,将不胜感激。
答案 0 :(得分:0)
我能够通过以不同的表格格式调用打印机信息,然后使用Select-string命令调用我想要的文本来实现此功能。然后我可以使用Trim()
清理out文件