Add-Printer -ConnectionName $ printer;дает ошибку не может содержать символы '\'.Как правильно использовать имя соединения здесь? - PullRequest
0 голосов
/ 29 мая 2019

У меня есть несколько текстовых документов с каждой строкой общего принтера в формате:

\\ pserver.company.com \ printername0
\\ pserver.company.com \ printername1
\\ pserver.company.com \ printername2

Я хочу автоматизировать установку этих списков принтеров, желательно с помощью PowerShell.Моя цель - получить содержимое текста и для каждой строки добавить принтер по имени подключения.

Я попытался выполнить следующее, и он говорит, что не может использовать '\', имя -ConnectionName ДОЛЖНО содержать'\' символы, вот как Windows это правильно?Я пробовал столько же, сколько вытащил строки из текстового файла в переменную, насколько я могу представить, но она сводится к следующему:

    $PrinterList = Get-Content c:\list_of_printers.txt
    ForEach($printer in $printerlist) {Add-Printer -ConnectionName $printer}

Когда я запускаю цикл выше, это дает мне следующее:

add-printer: указанный сервер не существует, либо имя сервера или принтера неверно.Имена не могут содержать символы «,» или «\».В C: \ importprinter.ps1: 7 char: 34 + ... oreach ($ printer in $ printers) {add-printer -ConnectionName $ printer} + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: NotSpecified: (MSFT_Printer: ROOT / StandardCimv2 / MSFT_Printer) [Add-Printer], CimException + FullyQualifiedErrorId: HRESULT 0x80070709, Add-Printer

Когда я открываю оболочку и вручную говорю:

    $printer = \\pserver.company.com\printername0
    Add-printer -ConnectionName $printer

Работает просто денди.

...