Есть ли в Windows команда или сценарий для печати файла (различных типов файлов, таких как .doc .xls .txt .pdf) на принтере по умолчанию?
Насколько я знаю, обычно нужно запустить соответствующее приложение (Word, Excel, Блокнот, Acrobat Reader) и попросить его распечатать файл, но я мог бы использовать общий способ достижения этого прямо сейчас ...
Я узнал это через Эта статья после того, как был разочарован Out-Printer.
Синопсис заключается в том, что использование Start-Process должно делать то, что вы ищете, если я понял вопрос:
Start-Process -FilePath "c:\somefile.pdf" -Verb Print
Это откроет файл с любой программой по умолчанию и распечатает на принтере по умолчанию (примечание: также можно указать другой принтер). Это оставляет программу запущенной, но ...
Start-Process -FilePath "c:\somefile.pdf" -Verb Print -PassThru | %{sleep 10;$_} | kill
... откроется, напечатает, засыпает на несколько секунд, чтобы программа действительно успела распечатать, а затем убьет ее.