Powershell输出单值

时间:2015-05-21 09:52:53

标签: powershell

我有以下问题。我想将我的默认打印机名称输出到.txt文件,以便在另一个脚本中使用,将此打印机设置为其他计算机的默认值。我使用的查询是:

Get-WmiObject -query "select * from win32_printer where default=$true"

它给了我这个数据:

Location      : xxxx
Name          : \\printserver\nameofprinter
PrinterState  : 0
PrinterStatus : 3
ShareName     : nameofprinter
SystemName    : \\printserver

但我希望查询在我Out-File它时只给我“Name”的值。到目前为止,我使用了Format-List -Property Name。但这输出了整条线。我只想在我的outfile中使用“\ Printerserver \ nameofprinter”。

2 个答案:

答案 0 :(得分:2)

Get-WmiObject -query "select * from win32_printer where default=$true" | select -ExpandProperty Name

答案 1 :(得分:0)

或者:

Get-WmiObject -query "select * from win32_printer where default=$true" | select -ExpandProperty Name

OR

(Get-WmiObject -query "select * from win32_printer where default=$true").Name

会做你想做的事。

希望这有帮助

编辑: 由于您只想编写一个存在打印机的文件,请尝试以下内容(使用打印机进行测试,但我没有卸载所有打印机以进行测试!)

if ( $printerName = (Get-WmiObject -query "select * from win32_printer where default=$true").Name ) { New-Item "C:\folder\printer.txt" -type file -Value $printerName -force }