- Out-Printer stuurt objecten of tekst naar de printer (Windows) en retourneert geen uitvoer in de pijplijn.
- PRINT in CMD drukt tekstbestanden af en biedt u de mogelijkheid om een apparaat te kiezen met /D.
- Voordat u gaat afdrukken, kunt u filteren en consolideren met Get-Content, wildcards en -Exclude om lussen te voorkomen.
Als je met Windows werkt en vertrouwd bent met de opdrachtregel, wil je vroeg of laat documenten naar de printer sturen zonder grafische toepassingen te hoeven openen. Afdrukken vanuit CMD of PowerShell is snel, kan worden gescript en is perfect voor het automatiseren van dagelijkse taken, van het verzenden van een TXT-bestand tot het rechtstreeks afdrukken van de uitvoer van een opdracht op papier.
In deze handleiding leg ik op een praktische manier de twee belangrijkste methoden uit: de PowerShell-cmdlet Out-Printer en de opdracht PRINT in de opdrachtprompt . Je leert ook hoe je bestanden voorbereidt, inhoud filtert, veelvoorkomende fouten voorkomt en opdrachten combineert om precies te bepalen wat je afdrukt. Dit alles wordt behandeld met syntax, voorbeelden en belangrijke nuances die je moet kennen.
Opties voor afdrukken in Windows vanaf de console
In Windows heb je twee complementaire benaderingen. Enerzijds biedt PowerShell de cmdlet Out-Printer om de uitvoer van een opdracht of object naar de printer te sturen (de standaardprinter of een specifieke printer). Het is eenvoudig, werkt via een pipeline en neemt de standaardinstellingen van de printer over , zonder dat er opmaakopties in de cmdlet zelf beschikbaar zijn.
Aan de andere kant behoudt de opdrachtprompt (CMD) de klassieke PRINT-opdracht voor tekst, met de optie om het apparaat te kiezen. Het is een beproefd hulpprogramma dat zich richt op tekstbestanden en handig is wanneer je niet de volledige kracht van PowerShell nodig hebt of wanneer je met batchscripts werkt.
Een belangrijk punt: Out-Printer bestaat alleen in Windows (niet in macOS of Linux ). Als je PowerShell op andere platforms gebruikt, is deze cmdlet niet beschikbaar , dus moet je op zoek naar alternatieven die specifiek zijn voor die omgeving, zoals afdrukken vanuit de terminal in Linux.
In beide gevallen wordt de standaardprinter van het systeem gebruikt als u geen printer opgeeft. Wanneer u een netwerkprinter wilt gebruiken, kunt u de UNC-naam ervan opgeven met Out-Printer en in CMD de bijbehorende apparaatnaam met PRINT.
Out-Printer in detail: syntaxis, parameters en gedrag
Dit is het cmdlet-sjabloon ter referentie. Let op de optionele parameters Name en InputObject , en dat het de standaard PowerShell CommonParameters ondersteunt.
Out-Printer <String>]
Korte beschrijving van het gedrag: Out-Printer stuurt de uitvoer naar de standaardprinter of naar een andere printer als u die opgeeft. Het biedt geen opmaakopties of afdrukinstellingen ; de standaardinstellingen van de geselecteerde printer worden gebruikt.
- platform: Ramen.
- Formaat: Cmdlets met het werkwoord Out formatteren niet, maar renderen en voeren uitvoer uit naar een presentatiebestemming.
- Uitgang in kanalisatie: zendt geen objecten uit. Als je de uitvoer naar Get-Member doorstuurt, zie je dat er niets te onderzoeken valt.
Belangrijkste parameters: ze zijn beperkt in aantal en eenvoudig, waardoor ze snel te gebruiken zijn in scripts en in de interactieve console.
- -Naam (alias: PrinterName). Type: String, Positie: 0, Optioneel. Geeft de doelprinter aan.
- -InvoerObject. Type: PSObject. Accepteert gepipede waarden, optioneel. Dit is het object dat naar de printer wordt verzonden.
- Gemeenschappelijke parameters: -Debug, -Foutactie, -Foutvariabele, -Informatieactie, -Informatievariabele, -Uitbuffer, -Uitvariabele, -Pijplijnvariabele, -Voortgangsactie, -Verbose, -Waarschuwingsactie, -Waarschuwingsvariabele.
Invoer en uitvoer: U kunt elk PSObject als invoer doorgeven , en de cmdlet retourneert niets (OutputType: None). Dit maakt het ideaal als eindpunt van een pipeline.
Operationele opmerkingen: Wanneer Out-Printer een "onbewerkt" object ontvangt, voegt PowerShell automatisch een opmaakcmdlet in voordat het object wordt weergegeven. Dit zorgt ervoor dat wat de printer bereikt een tekstuele weergave heeft , zelfs als u de opmaak niet handmatig specificeert.
Praktische voorbeelden met Out-Printer
Een bestand afdrukken naar de standaardprinter, zelfs als Out-Printer geen -Path heeft, is heel eenvoudig: lees het bestand en stuur het door via een pipe.
Get-Content -Path ./readme.txt | Out-Printer
In dit patroon haalt Get-Content de inhoud eruit en stuurt Out-Printer deze naar de standaardprinter. Gebruik dit voor TXT-bestanden, logbestanden of uitvoer die al platte tekst is.
Door een tekenreeks naar een externe printer (UNC) te printen, kunt u snel de verbinding en de printwachtrij testen. Het is ideaal om te controleren of de gedeelde naam van de printer correct is.
"Hello, World" | Out-Printer -Name "\\Server01\Prt-6B Color"
Als u de volledige helptekst voor een cmdlet wilt afdrukken, kunt u de inhoud van Get-Help weergeven en deze als een object verzenden. De truc is om -InputObject te gebruiken met de eerder opgehaalde waarde.
$H = Get-Help -Full Get-CimInstance
Out-Printer -InputObject $H
Houd er rekening mee dat Out-Printer geen controle heeft over de afdrukopties (pagina's, lade, dubbelzijdig afdrukken, enz.). De standaardinstellingen van de printer worden altijd toegepast , dus eventuele fijnafstellingen moeten op het apparaat zelf of met specifieke tools worden gedaan, en niet met behulp van de cmdlet.
Afdrukken vanaf de opdrachtprompt met PRINT
De PRINT-opdracht is een standaardfunctie in Windows 10/11 en moderne versies van Windows Server. Het doel ervan is eenvoudig: tekstbestanden afdrukken vanuit de opdrachtprompt (CMD).
PRINT archivo ]
De optie /D specificeert het afdrukapparaat. Als u er geen opgeeft, wordt de standaardprinter gebruikt . Het is een perfect hulpprogramma als uw workflow nog batchgewijs is en u met pure TXT-bestanden werkt.
Een eenvoudig voorbeeld van het verzenden van een .txt-bestand naar het standaardapparaat is als volgt: open CMD op de locatie van het bestand en typ PRINT filename.txt . Als u een toegewezen printer of een specifieke apparaatnaam gebruikt, voeg deze dan toe met /D.
Voorbereiden en selecteren wat er moet worden afgedrukt met bestandscmdlets
Voordat je gaat printen, is het verstandig om te bepalen welke bestanden je in de wachtrij wilt plaatsen, naar een tijdelijke map wilt verplaatsen of op criteria wilt filteren. PowerShell is hierbij uitermate geschikt dankzij de cmdlets voor het bestandssysteem.
Het weergeven van de inhoud met Get-ChildItem (aliassen: gci, dir, ls) en het tonen van verborgen of systeembestanden gebeurt direct met -Force. Voeg -Recurse toe als u dieper in submappen wilt kijken.
Get-ChildItem -Path C:\ -Force
Get-ChildItem -Path C:\ -Force -Recurse
Als u op zoek bent naar geavanceerdere filtermogelijkheden, combineer dan gci met Where-Object om uw filtering te baseren op eigenschappen zoals datum en grootte. Dit patroon is ideaal voor het genereren van afdrukbare inventarislijsten.
Get-ChildItem -Path $env:ProgramFiles -Recurse -Include *.exe |
Where-Object { ($_.LastWriteTime -gt '2005-10-01') -and ($_.Length -ge 1mb) -and ($_.Length -le 10mb) }
Het kopiëren of versiebeheer van werkbestanden is een fluitje van een cent met Copy-Item, en u kunt controleren of een bestand al eerder bestond met Test-Path. Gebruik -Force om alleen-lezen bestemmingen te overschrijven.
if (Test-Path -Path $PROFILE) {
Copy-Item -Path $PROFILE -Destination $($PROFILE -replace 'ps1$', 'bak') -Force
}
Om mappenstructuren voor afdrukken voor te bereiden, maakt u lege mappen en bestanden aan met New-Item. Maak onderscheid tussen -ItemType Directory en -ItemType File, afhankelijk van uw behoeften.
New-Item -Path 'C:\temp\Nueva Carpeta' -ItemType Directory
New-Item -Path 'C:\temp\Nueva Carpeta\listado.txt' -ItemType File
Als u tussenliggende mappen wilt opschonen, verwijdert Remove-Item bestanden of mappen. Als er inhoud aanwezig is en u bevestigingen wilt vermijden, voegt u -Recurse toe.
Remove-Item -Path C:\temp\ColaTemporal -Recurse
Je kunt zelfs een map als tijdelijk logisch station toewijzen met New-PSDrive om paden tijdens het proces te verkorten. Met -Persist worden alleen externe paden ondersteund en in Verkenner geïntegreerd.
New-PSDrive -Name P -Root $env:ProgramFiles -PSProvider FileSystem
Lees, schrijf en combineer teksten voordat u ze afdrukt
Get-Content leest tekstbestanden als een array (elke regel is een element). Dit maakt het erg handig om de inhoud te bekijken, te filteren of te bewerken voordat deze wordt afgedrukt.
$lineas = Get-Content -Path .\listado.txt
$lineas.Length
Om content dynamisch te genereren, zijn Write-Output (ook wel: write, echo) en omleidingen je beste vrienden. Gebruik > om te creëren/overschrijven en >> om toe te voegen.
Write-Output "Encabezado del informe" > informe.txt
Write-Output "Nueva línea" >> informe.txt
Als je inhoud wilt klonen, kun je Get-Content met omleiding gebruiken in plaats van Copy-Item. Dit werkt goed met patronen en jokertekens bij het samenvoegen van tekst.
Get-Content benjamin.txt > benjamin2.txt
Get-Content *.log > combinado.log
Pas op voor een klassieke fout: het omleiden van `Get-Content *.txt` naar een bestand dat ook eindigt op `.txt` in dezelfde map kan een oneindige lus veroorzaken, omdat het bestemmingsbestand dan de bron wordt. Je kunt het proces afbreken met Control-C, maar het is beter om het zekere voor het onzekere te nemen.
Get-Content *.txt > gran.txt # Riesgo: gran.txt coincide con *.txt
De meest nette oplossing is om het bestemmingsbestand uit te sluiten met de parameter -Exclude. Dit voorkomt dat uw eigen uitvoer in de invoerset wordt opgenomen.
Get-Content *.txt -Exclude gran.txt > gran.txt
Gebruik jokertekens om precies te selecteren wat je nodig hebt (bijvoorbeeld ben*.txt). Een zorgvuldige selectie vermindert verrassingen en versnelt je workflow.
Snel zoeken en tellen voordat u het naar de drukker stuurt
Om specifieke fragmenten in meerdere bestanden te vinden, is `Select-String` (alias: `sls`) vergelijkbaar met een ingebouwde `grep` in PowerShell. Perfect om te controleren of de af te drukken tekst daadwerkelijk bevat wat je verwacht.
Select-String "existencia única" *.txt
En als je snel statistieken nodig hebt, gebruik dan de pipe-opdracht Measure-Object (measure) om regels, woorden en tekens te tellen. Voeg -IgnoreWhiteSpace toe als je witruimte wilt aftrekken.
Get-Content benjamin.txt | Measure-Object -Line -Word -Character
Get-Content *.txt | Measure-Object -Line -Word -Character -IgnoreWhiteSpace
Deze voorcontrole bespaart papier en tijd, vooral bij grote printopdrachten. Meet, controleer en print vervolgens met Out-Printer of PRINT, in de wetenschap dat wat uit de printer komt precies is wat u nodig hebt.
Typische workflows voor het afdrukken vanaf de console
Scenario 1: Een door een proces gegenereerd TXT-bestand afdrukken. Het proces leest het bestand, controleert een paar regels en stuurt het naar de standaardprinter.
Get-Content .\resultado.txt -TotalCount 10
Get-Content .\resultado.txt | Out-Printer
Scenario 2: Een etiket of koptekst naar een gedeelde printer sturen. Ideaal voor cheques of netwerkprinters.
"Etiqueta: Pedido 12345" | Out-Printer -Name "\\SrvPrint\HP-Laser"
Scenario 3: Voeg meerdere logboeken van de dag samen en print ze vervolgens. Vermijd een uitvoerlus met -Exclude en filter indien nodig op datumpatroon.
Get-Content .\logs\*.2025-09-*.log -Exclude resumen.log > resumen.log
Get-Content resumen.log | Out-Printer
Scenario 4 (CMD): Snel een TXT-bestand afdrukken vanuit een batchscript . Handig wanneer PowerShell geen onderdeel is van de workflow (zie PRN-bestanden openen ).
PRINT /D:PRN01 C:\reportes\hoy.txt
Gerelateerde navigatie- en productiviteitstips
Om tussen mappen te navigeren: Set-Location (sl, cd) en tab-aanvulling besparen je typwerk en voorkomen fouten. Je kunt relatieve paden zoals ..\.. combineren om tussen mappen te springen.
Als je regelmatig wisselt tussen twee locaties, zijn Push-Location (pushd) en Pop-Location (popd) erg handig: je slaat de huidige locatie op de stack op en keert terug met één enkel commando.
Wil je iets liever in Verkenner bekijken? Start dan `explorer .` vanuit de huidige map. Zo kun je visueel controleren wat je vanuit de console gaat afdrukken.
Het hernoemen of verplaatsen van bestanden met Move-Item (mv) en het kopiëren ervan met Copy-Item (cp) gaat erg snel. Wees voorzichtig met het gebruik van rm (Remove-Item): hiermee worden bestanden permanent verwijderd , niet alleen naar de prullenbak.
Als u met lijsten (bijvoorbeeld computers of IP-adressen) in een TXT-bestand werkt, retourneert Get-Content een array; u kunt deze gebruiken als basis voor het genereren van een rapport en het verzenden ervan naar Out-Printer. Pipelining maakt van deze workflows beknopte en herhaalbare stappen.
Ingebouwde help en handige parameters
Get-Help toont u de syntaxis en parameters van elke cmdlet. Als u -Online toevoegt, wordt gedetailleerde help in uw browser geopend . Dit is de snelste manier om specifieke vragen te verduidelijken.
Get-Help Out-Printer
Get-Help Get-Content -Online
Bij Get-Content kunt u met -TotalCount alleen de eerste X regels lezen en met -Tail de laatste X. Deze opties zijn perfect om een gedeelte te controleren voordat u gaat printen en verrassingen op papier te voorkomen.
Get-Content .\informe.txt -TotalCount 10
Get-Content .\informe.txt -Tail 10
Je hebt al gezien dat `-Exclude` essentieel is om te voorkomen dat het bestemmingsbestand de bron wordt tijdens het samenvoegen. Houd dit in gedachten wanneer je met wildcards en omleidingen werkt.
Beperkingen, waarschuwingen en goede praktijken
Out-Printer heeft geen instellingen voor opmaak, marges of lade; het accepteert de standaardinstellingen van de printer . Als u meer controle nodig hebt, kunt u fabrikantspecifieke tools gebruiken of een PDF in het gewenste formaat genereren en deze vervolgens afdrukken (bijvoorbeeld ' Afdrukken als PDF' in Windows 11 ).
Out-Printer stuurt, zoals bedoeld, geen uitvoer naar de pipeline. Probeer de uitvoer ervan niet door te koppelen aan Get-Member : er zal geen object zijn om te onderzoeken. Gebruik het als de laatste stap in de pipeline.
Als u grote hoeveelheden tekst wilt afdrukken, controleer dan vooraf de grootte en het aantal regels met Object meten. Een controle van 5 seconden kan u veel pagina's en inkt besparen.
Houd er bij het gebruik van PRINT in CMD rekening mee dat het commando zich richt op tekstbestanden. Voor niet-tekstuele inhoud bieden PowerShell en Out-Printer flexibelere weergavemogelijkheden dankzij pipelines en de mogelijkheid om objecten vooraf naar tekst te converteren.
En als iets te lang blijft "nadenken" (bijvoorbeeld een oneindige lus door een slecht ontworpen omleiding), onderbreek het dan met Control-C en controleer de opdrachten. Vermijd het gebruik van hetzelfde invoerpatroon als de uitvoerbestandsnaam in dezelfde map.
Deze handleiding bereidt u voor om vol vertrouwen vanaf de commandoregel af te drukken: u leert Out-Printer en PRINT gebruiken, hoe u bestanden voorbereidt en filtert, inhoud meet, naar tekenreeksen zoekt en valkuilen zoals omleidingslussen vermijdt. Met deze tools kunt u robuuste, herhaalbare en snelle workflows bouwen die precies verzenden wat u wilt, naar de printer die u wilt, zonder afhankelijk te zijn van de grafische interface.
Gepassioneerd schrijver over de wereld van bytes en technologie in het algemeen. Ik deel mijn kennis graag door te schrijven, en dat is wat ik in deze blog ga doen: je de meest interessante dingen laten zien over gadgets, software, hardware, technologische trends en meer. Mijn doel is om u te helpen op een eenvoudige en onderhoudende manier door de digitale wereld te navigeren.


