Работа с периферийным оборудованием часто требует выхода за рамки привычного графического интерфейса, особенно когда стандартные методы не срабатывают. Запуск принтера из командной строки — это мощный инструмент для системных администраторов и продвинутых пользователей, позволяющий решать задачи быстрее и точнее.

Многие сталкиваются с ситуацией, когда устройство не реагирует на нажатие кнопки в меню, но драйверы установлены корректно. В таких случаях использование утилиты cmd.exe позволяет принудительно инициировать печать диагностических страниц или сбросить зависшую очередь заданий без перезагрузки системы.

Вы сможете управлять подключенными устройствами печати с помощью текстовых команд, что особенно актуально при удаленном администрировании или работе в серверных средах, где графический интерфейс может быть недоступен.

Подготовка среды для выполнения команд

Прежде чем вводить какие-либо инструкции, необходимо убедиться, что у вас есть права администратора. Обычный запуск командной строки может не позволить выполнить команды управления службами печати, поэтому важно запустить консоль от имени администратора.

Для этого нажмите комбинацию клавиш Win + X и выберите в появившемся меню пункт Windows PowerShell (администратор) или Командная строка (администратор). Если вы используете Windows 11, путь может немного отличаться, но логика остается прежней.

После открытия окна с черным фоном и мигающим курсором введите команду whoami и нажмите Enter. Если система отобразит ваше имя пользователя с префиксом Administrator, среда готова к работе с принтерами.

⚠️ Внимание: Команды, изменяющие состояние служб или реестра, могут быть необратимы. Убедитесь, что вы точно знаете, какую службу вы перезапускаете, чтобы не нарушить работу других сетевых компонентов.

Основные команды для управления службой печати

Служба печати в Windows называется Spooler, и именно она отвечает за передачу данных от приложений к физическому устройству. Если принтер не реагирует, часто проблема кроется именно в остановке или зависании этой службы.

Для проверки текущего состояния службы введите команду sc query Spooler. В ответ система покажет статус: RUNNING (работает) или STOPPED (остановлена). Если статус положительный, но печать не идет, попробуйте перезапустить службу вручную.

Для перезапуска используйте две последовательные команды: сначала остановите службу net stop spooler, а затем запустите её снова net start spooler. Это действие сбрасывает временные файлы и очищает буфер обмена данными.

📊 Какая у вас операционная система?
Windows 10
Windows 11
Windows Server
Linux

Печать тестовой страницы через консоль

Запустить печать тестовой страницы из командной строки можно несколькими способами, в зависимости от того, используете ли вы локальный драйвер или сетевой порт. Самый простой метод — использование утилиты print для отправки текстового файла.

Создайте текстовый файл с любым содержимым, например test.txt, в корне диска C:. Затем введите команду print /D:"Имя_Принтера" C:\test.txt. Система попытается отправить файл на указанное устройство.

Если вы не знаете точное имя принтера, используйте команду wmic printer get name. Она выведет список всех подключенных устройств. Обратите внимание, что имя должно точь-в-точь совпадать с тем, что выводит система.

💡

Создайте файл-шаблон с названием test.txt и содержимым "Тест печати", чтобы использовать его для быстрой диагностики без повторного создания каждый раз.

Получение полного списка и статуса принтеров

Для глубокой диагностики необходимо получить детальную информацию о том, как система видит подключенные устройства. Команды wmic и powershell позволяют извлечь технические параметры, недоступные в обычном меню.

Введите wmic printer where default=True get Name, PrinterStatus, WorkOffline. Эта строка покажет имя принтера по умолчанию, его текущий статус (0 — OK, другие коды — ошибки) и режим работы в автономном режиме.

Если вы используете более современные версии PowerShell, команда Get-Printer даст еще более полную картину, включая имя драйвера, порт и тип устройства. Это особенно полезно при настройке сложных сетевых конфигураций.

Важно различать статусы: значение 3 обычно означает, что принтер печатает, а значение 5 — что он находится в режиме ожидания или завис. Понимание этих кодов поможет быстро локализовать проблему.

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

Код статуса Значение Рекомендуемое действие
0 OK (Готов) Ничего делать не нужно, устройство функционирует нормально.
3 Printing (Печатает) Ожидание завершения задачи, проверьте очередь печати.
4 Paper Out (Нет бумаги) Положите бумагу в лоток или проверьте датчики.
5 Paused (Пауза) Снимите принудительную паузу через команду или меню.
6 Error (Ошибка) Проверьте кабель, соединение и наличие тонера или чернил.

☑️ Проверка перед печатью

Выполнено: 0 / 4

Очистка очереди печати и временных файлов

Часто причина того, что принтер не запускается, кроется в переполненной или поврежденной очереди заданий. В этом случае стандартная очистка через меню может не сработать, и потребуется командная строка.

Алгоритм действий следующий: сначала остановите службу net stop spooler. Затем перейдите в папку с временными файлами печати, введя cd C:\Windows\System32\spool\PRINTERS.

В этой директории находятся файлы с расширением .SPL и .SHD, которые и являются очередью заданий. Введите команду del /Q /F ., чтобы безвозвратно удалить все файлы в этой папке. После этого запустите службу снова: net start spooler.

⚠️ Внимание: Удаление файлов в папке spool происходит мгновенно и без возможности восстановления. Убедитесь, что вы находитесь именно в каталоге System32\spool\PRINTERS, а не в общей папке Windows.

Этот метод эффективен даже в случаях, когда графический интерфейс зависает и не дает открыть окно очереди печати. Он полностью очищает буфер и позволяет начать работу с чистого листа.

Альтернативный способ очистки через PowerShell

Можно использовать команду Remove-PrinterJob -Name "Имя_Принтера" для выборочного удаления задач, не останавливая службу, но это требует более сложного скрипта и прав администратора.

Принудительный запуск печати через драйвер

Если у вас установлены драйверы HP или Epson, часто в их комплект входит утилита cnmcmd или аналогичные службы, которые можно вызывать из консоли. Это позволяет выполнить действия, специфичные для производителя.

Например, для сброса счетчиков или принудительного запуска самотестирования (self-test) иногда требуется прямой вызов исполняемого файла драйвера. Путь к таким файлам обычно находится в C:\Program Files\HP\... или аналогичных директориях.

Введите полный путь к утилите драйвера в командной строке, например "C:\Program Files\HP\HP LaserJet\hpljtest.exe" /test. Если драйвер поддерживает консольные аргументы, он запустит соответствующий процесс.

Однако, этот метод менее универсален, чем работа со службой Spooler, и зависит от конкретной модели и версии ПО. Всегда сверяйтесь с технической документацией вашего устройства.

Для большинства задач достаточно стандартных команд Windows, не прибегая к специфичным утилитам брендов, если только речь не идет о глубокой диагностике аппаратных сбоев.

💡

Регулярная очистка папки PRINTERS и перезапуск службы Spooler — самые эффективные способы устранения зависаний очереди печати без переустановки драйверов.

Диагностика сетевых подключений

Если принтер подключен по сети, проблема может быть не в самом устройстве, а в потере связи между компьютером и принтером. Командная строка предлагает мощные инструменты для проверки этого канала.

Используйте команду ping IP_адрес_принтера, заменив адрес на реальный IP вашего устройства. Если вы видите ответ "Reply from...", значит, сетевое соединение активно, и проблема программная.

При отсутствии ответа (Request timed out) проверьте подключение кабеля, состояние Wi-Fi роутера или настройки файрвола. Иногда принтер просто перешел в спящий режим и не отвечает на пинг.

Для принтеров с поддержкой SNMP можно также использовать команду wmic printer where "Name='Имя_Принтера'" get WorkOffline, чтобы проверить, не переведено ли устройство в режим оффлайн после потери связи.

Автоматизация процессов запуска

Для частых задач можно создать бат-файл (скрипт), который будет выполнять все необходимые команды автоматически. Это избавит от необходимости вводить длинные последовательности каждый раз.

Создайте текстовый файл, назовите его restart_printer.bat, и вставьте туда команды:

net stop spooler

del /Q /F C:\Windows\System32\spool\PRINTERS\.

net start spooler

Запустите этот файл правой кнопкой мыши и выберите "Запуск от имени администратора". В будущем это позволит сбрасывать очередь печати в один клик, экономя время и нервы.

Такой подход особенно удобен в офисной среде, где принтеры используются интенсивно и требуют частой очистки буфера.

Создание ярлыка

Вы можете создать ярлык для этого бат-файла на рабочем столе, чтобы запускать его с помощью сочетания горячих клавиш, назначив свойство "Способ запуска" -> "От имени администратора".

Использование WMI для продвинутого управления

Windows Management Instrumentation (WMI) предоставляет доступ к глубокой настройке системы через команды. Это позволяет не только печатать, но и менять настройки по умолчанию.

Команда wmic printer where "Name='Имя_Принтера'" call SetDefault позволяет установить конкретный принтер как основной, если у вас их несколько. Это полезно при переключении между локальным и сетевым оборудованием.

Для получения более детальной информации о портах, которые использует принтер, введите wmic printerconfig get Name, DriverName, PortName. Это поможет выявить конфликты портов, если несколько принтеров используют один и тот же ресурс.

WMI команды могут выглядеть сложными, но они дают максимальный контроль над системой, недоступный в стандартном графическом интерфейсе управления устройствами.

💡

WMI-команды позволяют управлять не только печатью, но и настройками портов и драйверов, что критично для администрирования парка принтеров в сети.

Что делать, если команда net start spooler не работает?

Обычно это связано с отсутствием прав администратора или повреждением системных файлов. Попробуйте запустить командную строку с повышенными привилегиями. Если это не помогло, выполните команду sfc /scannow для восстановления целостности системы.

Можно ли запустить печать через командную строку на macOS?

На macOS используется утилита CUPS. Команды там другие, например lp -d Имя_Принтера файл.txt. Командная строка Windows не совместима с логикой работы Unix-подобных систем, поэтому нужны специфичные утилиты.

Почему принтер пишет "Пауза" после команды?

Служба печати могла перехватить управление и перевести устройство в режим ожидания после перезапуска. Введите команду pause в очередь печати или используйте wmic printer where "Name='Имя_Принтера'" call ResumePrinter для продолжения работы.

Как узнать, какой драйвер установлен через командную строку?

Используйте команду wmic printer get Name, DriverName, PortName. В колонке DriverName будет указано точное имя драйвера, который использует система для данного устройства.