Hvis du arbejder i Windows og er fortrolig med at bruge konsollen, vil du før eller siden ønske at sende dokumenter til printeren uden at åbne nogen grafiske applikationer. Udskriv fra CMD eller PowerShell Det er hurtigt, kan bruges til scripts og perfekt til at automatisere opgaver. fra dag til dag, fra at sende en tekstmeddelelse til at dumpe outputtet fra en kommando direkte på papir.
I denne guide forklarer jeg, med en praktisk tilgang, de to primære måder: PowerShell Out-Printer cmdlet'en og PRINT-kommandoen til Kommandoprompt. Du vil også se, hvordan du forbereder filer, filtrerer indhold, undgår typiske fejl og kæder kommandoer for at kontrollere, hvad du udskriver, ned til mindste detalje. Alt sammen med syntaks, eksempler og vigtige nuancer, du bør kende.
Indstillinger for udskrivning i Windows fra konsollen
I Windows har du to komplementære muligheder. På den ene side tilbyder PowerShell cmdlet'en Out-Printer til at sende outputtet fra en kommando eller et objekt til printeren (enten standard eller en specifik). Den er direkte, fungerer via pipeline og arver standardprinterindstillingerne.uden at eksponere formateringskontroller på selve cmdlet'en.
På den anden side opretholder kommandoprompten (CMD) den klassiske PRINT-kommando til tekster med mulighed for at vælge en enhed. Det er et veteranværktøj fokuseret på tekstfiler, nyttigt, når du ikke har brug for PowerShells fulde kraft eller arbejder med batch-scripts.
En vigtig nuance: Out-Printer findes kun på Windows (ikke macOS eller Linux). Hvis du bruger PowerShell på andre platforme, er denne cmdlet ikke tilgængelig., så du bliver nødt til at søge efter alternativer, der er specifikke for det pågældende miljø, såsom Udskriv fra terminal i Linux.
I begge tilfælde, hvis du ikke angiver en printer, vil systemets standardindstilling blive brugt. Når du skal pege på en netværksprinter, kan du angive dens UNC-navn. med Out-Printer og, i CMD, den tilsvarende enhed i PRINT.
Out-Printer i detaljer: syntaks, parametre og adfærd
Dette er skelettet af cmdlet'en, så du har referencen ved hånden. Bemærk de valgfrie parametre Navn og InputObject og understøtter de sædvanlige PowerShell CommonParameters.
Out-Printer <String>]
Kort beskrivelse af funktionsmåden: Out-Printer sender output til standardprinteren eller en anden printer, hvis du angiver det. Den tilbyder ingen formateringsmuligheder eller kontrol af udskriftsjob.; standardværdierne for den valgte printer bruges.
- Plataforma: Windows.
- FormatCmdlets med verbet Out formaterer ikke; de gengives og outputtes til en præsentationsdestination.
- Kanaliseret output: udsender ingen objekter. Hvis du sender dens output til Get-Member, vil du se, at der ikke er noget at undersøge.
Hovedparametre: De er få og enkle, hvilket gør dem hurtigere at bruge. i scripts og i interaktiv konsol.
- -Yam (alias: PrinterName). Type: String, Position: 0, Valgfri. Angiver destinationsprinteren.
- -InputObjektType: PSObject. Accepterer pipede værdier, valgfrit. Dette er det objekt, der sendes til printeren.
- Fællesparametre: -Fejlfinding, -Fejlhandling, -Fejlvariabel, -Informationshandling, -Informationsvariabel, -Udbuffer, -Udvariabel, -Pipelinevariabel, -Statushandling, -Uddybende, -Advarselshandling, -Advarselsvariabel.
Ind- og udgange: Du kan pipe et hvilket som helst PSObject som input, og cmdlet'en returnerer ingenting (OutputType: None). Dette gør den ideel som et slutpunkt for en pipeline.
Operationelle noter: Når Out-Printer modtager et råt objekt, indsætter PowerShell automatisk en formaterings-cmdlet, før den gengives. Dette sikrer, at det, der når printeren, har en tekstlig repræsentation., selvom du ikke angiver formatet manuelt.
Praktiske eksempler med Out-Printer
Det er meget ligetil at udskrive en fil til standardprinteren, selvom Out-Printer ikke har -Path: bare læs filen og skriv den.
Get-Content -Path ./readme.txt | Out-Printer
I dette mønster udtrækker Get-Content indholdet, og Out-Printer sender det til standardprinteren. Brug den til tekst, logs eller output, der allerede er almindelig tekst.
Udskrivning af en streng til en fjernprinter (UNC) giver dig mulighed for hurtigt at teste forbindelse og udskrivningsspooling. Det er ideelt til at bekræfte, at printerens delte navn er korrekt..
"Hello, World" | Out-Printer -Name "\\Server01\Prt-6B Color"
Hvis du vil udskrive den fulde hjælp til en cmdlet, kan du dumpe indholdet af Get-Help og sende det som et objekt. Nøglen er at bruge -InputObject med den tidligere hentede værdi..
$H = Get-Help -Full Get-CimInstance
Out-Printer -InputObject $H
Husk at Out-Printer ikke styrer udskrivningsindstillingerne (sider, bakke, duplex osv.). Printerens standardværdier vil altid blive anvendt., så enhver finjustering skal udføres på enheden eller med specifikke værktøjer udover cmdlet'en.
Udskriv fra kommandoprompten med PRINT
PRINT-kommandoen er indbygget i Windows 10/11 og moderne Windows Server-udgaver. Dens formål er simpelt: udskriv tekstfiler fra CMD.
PRINT archivo ]
Indstillingen /D angiver udskrivningsenheden. Hvis du ikke angiver det, bruges standardprinteren.Det er et perfekt værktøj, hvis din arbejdsgang stadig er batchbaseret, og du arbejder med ren TXT.
Et grundlæggende eksempel på at sende en .txt til standardenheden ville være så simpelt som: Åbn CMD hvor filen er og kør PRINT name.txtHvis du bruger en tilknyttet printer eller et specifikt enhedsnavn, skal du tilføje /D til det.
Forbered og vælg, hvad der skal udskrives, med fil-cmdlets
Før udskrivning er det en god idé at beslutte, hvilke filer der skal sættes i kø, flytte dem til en midlertidig mappe eller filtrere efter kriterier. PowerShell skinner her med filsystem-cmdlets.
Det er øjeblikkeligt at vise indhold med Get-ChildItem (aliasser: gci, dir, ls) og skjule filer eller systemfiler med -Force. Tilføj -Recurse hvis du vil dykke ned i undermapper.
Get-ChildItem -Path C:\ -Force
Get-ChildItem -Path C:\ -Force -Recurse
Hvis du leder efter mere sofistikeret filtrering, kan du kombinere gci med Where-Object for at basere dit filter på egenskaber som dato og størrelse. Dette mønster er ideelt til at generere printbare lagerlister..
Get-ChildItem -Path $env:ProgramFiles -Recurse -Include *.exe |
Where-Object { ($_.LastWriteTime -gt '2005-10-01') -and ($_.Length -ge 1mb) -and ($_.Length -le 10mb) }
Det er nemt at kopiere eller versionere arbejdsfiler med Copy-Item, og du kan tjekke for tidligere eksistens med Test-Path. Brug -Force til at overskrive skrivebeskyttede mål.
if (Test-Path -Path $PROFILE) {
Copy-Item -Path $PROFILE -Destination $($PROFILE -replace 'ps1$', 'bak') -Force
}
For at forberede mappestrukturer til udskrifter skal du oprette tomme mapper og filer med New-Item. Skeln mellem -ItemType-mappen og -ItemType-filen afhængigt af dine behov..
New-Item -Path 'C:\temp\Nueva Carpeta' -ItemType Directory
New-Item -Path 'C:\temp\Nueva Carpeta\listado.txt' -ItemType File
Hvis du har brug for at rydde op i mellemliggende mapper, sletter Remove-Item filer eller mapper. Når der er indhold, og du vil undgå bekræftelser, skal du tilføje -Recurse.
Remove-Item -Path C:\temp\ColaTemporal -Recurse
Du kan endda tilknytte en mappe som et midlertidigt logisk drev med New-PSDrive for at forkorte stier under processen. Med -Persist understøttes og integreres kun eksterne stier i Explorer.
New-PSDrive -Name P -Root $env:ProgramFiles -PSProvider FileSystem
Læs, skriv og kombiner tekster før udskrivning
Get-Content læser tekstfiler som et array (hver linje er et element). Dette gør det meget praktisk at forhåndsvise, filtrere eller transformere før udskrivning..
$lineas = Get-Content -Path .\listado.txt
$lineas.Length
Til at generere indhold på farten er Write-Output (også kendt som: write, echo) og omdirigering dine allierede. Omdiriger med > for at oprette/overskrive og med >> for at tilføje.
Write-Output "Encabezado del informe" > informe.txt
Write-Output "Nueva línea" >> informe.txt
Hvis du vil klone indhold, kan du bruge Get-Content med omdirigering i stedet for Copy-Item. Det fungerer godt med mønstre og jokertegn, når du konsoliderer tekster..
Get-Content benjamin.txt > benjamin2.txt
Get-Content *.log > combinado.log
Pas på en klassiker: omdirigering af Get-Content *.txt til en fil, der også ender på .txt i samme mappe, kan skabe en "endeløs" løkke, fordi destinationsfilen bliver kildefilen. Du afbryder med Control-C, men forebyggelse er bedre.
Get-Content *.txt > gran.txt # Riesgo: gran.txt coincide con *.txt
Den rene løsning er at udelade målfilen med parameteren -Exclude. På denne måde undgår du, at dit eget resultat kommer ind i inputsættet..
Get-Content *.txt -Exclude gran.txt > gran.txt
Brug jokertegn til din fordel for at vælge præcis det, du har brug for (f.eks. ben*.txt). Et velafstemt udvalg reducerer overraskelser og fremskynder dit flow..
Hurtig søgning og optælling før afsendelse til printeren
For at finde specifikke fragmenter i flere filer er Select-String (alias: sls) som at have grep indbygget i PowerShell. Perfekt til at validere, at den tekst, der skal udskrives, indeholder det, du forventer..
Select-String "existencia única" *.txt
Og hvis du har brug for hurtige metrikker, kan du sende en pipe til Measure-Object (mål) for at tælle linjer, ord og tegn. Tilføj -IgnoreWhiteSpace hvis du vil fratrække mellemrum.
Get-Content benjamin.txt | Measure-Object -Line -Word -Character
Get-Content *.txt | Measure-Object -Line -Word -Character -IgnoreWhiteSpace
Denne forhåndskontrol sparer papir og tid, især i store partier. Mål, tjek, og udskriv derefter med Out-Printer eller PRINT med ro i sindet, at det, der kommer ud af printeren, er præcis det, du har brug for.
Typiske arbejdsgange for udskrivning fra konsollen
Scenarie 1: Udskriv en TXT genereret af en proces. Læs, tjek et par linjer og send til standardprinteren.
Get-Content .\resultado.txt -TotalCount 10
Get-Content .\resultado.txt | Out-Printer
Scenarie 2: Send en etiket eller et header til en delt printer. Ideel til test- eller netværksprintere.
"Etiqueta: Pedido 12345" | Out-Printer -Name "\\SrvPrint\HP-Laser"
Scenarie 3: Saml flere logfiler fra dagen, og udskriv dem derefter. Undgå output-løkken med -Exclude og filtrer efter datomønster om nødvendigt.
Get-Content .\logs\*.2025-09-*.log -Exclude resumen.log > resumen.log
Get-Content resumen.log | Out-Printer
Scenarie 4 (CMD): Udskriv hurtigt en TXT fra en script parti. Nyttig, når PowerShell ikke er en del af flowet (se åbne PRN filer).
PRINT /D:PRN01 C:\reportes\hoy.txt
Relaterede navigations- og produktivitetstips
For at flytte mellem mapper: Set-Location (sl, cd) og tabulatorfuldførelse sparer dig for skrivefejl. Du kan kombinere relative stier som ..\.. for at hoppe over grene.
Hvis du skifter meget mellem to placeringer, er Push-Location (pushd) og Pop-Location (popd) meget praktiske: Du gemmer den aktuelle placering i stakken og returnerer med en enkelt kommando..
Vil du hellere se noget i Stifinder? Start Stifinder fra den aktuelle mappe. På denne måde kan du visuelt verificere, hvad du vil udskrive fra konsollen..
Det er lynhurtigt at omdøbe eller flytte filer med Move-Item (mv) og kopiere dem med Copy-Item (cp). Vær forsigtig, når du bruger rm (Remove-Item): det sletter elementer permanent., går ikke i skraldespanden.
Hvis du arbejder med lister (f.eks. værter eller IP-adresser) i en TXT-fil, returnerer Get-Content et array; du kan bruge dette som grundlag for at generere en rapport og sende den til Out-Printer. Pipelining omdanner disse flows til præcise, gentagelige trin..
Indbygget hjælp og nyttige parametre
Get-Help viser dig syntaksen og parametrene for enhver cmdlet. Hvis du tilføjer -Online, åbner det detaljeret hjælp i browseren.Det er den hurtigste måde at afklare specifikke tvivlsspørgsmål på.
Get-Help Out-Printer
Get-Help Get-Content -Online
I tilfældet med Get-Content lader -TotalCount dig kun læse de første X linjer og -Tail de sidste X. De er perfekte til at kontrollere et stykke arbejde inden udskrivning. og undgå overraskelser på papiret.
Get-Content .\informe.txt -TotalCount 10
Get-Content .\informe.txt -Tail 10
Du har allerede set, at -Exclude er nøglen til at forhindre, at destinationsfilen bliver kildefilen under en konsolidering. Husk dette, når du arbejder med jokertegn. og omdirigeringer.
Begrænsninger, advarsler og god praksis
Out-Printer har ingen kontroller for format, margener eller bakker; accepterer printerens standardindstillingerHvis du har brug for mere kontrol, så kig efter producentspecifikke værktøjer eller generer en PDF med det ønskede format og derefter udskrive det (f.eks. Udskriv som PDF i Windows 11).
Out-Printer sender ikke output til pipelinen som planlagt. Forsøg ikke at kæde dens resultat sammen med Get-MemberDer vil ikke være noget objekt at undersøge. Brug dette som det sidste trin i processen.
Hvis du udskriver store mængder tekst, skal du først kontrollere størrelsen og antallet af linjer med Measure-Object. En 5-sekunders kontrol kan spare mange sider og blæk.
Når du bruger PRINT i CMD, skal du huske, at det fokuserer på tekstfiler. For ikke-tekstuelt indhold tilbyder PowerShell og Out-Printer mere fleksibel gengivelse. takket være pipelinen og den forudgående konvertering af objekter til tekst.
Og hvis noget "tænker" for længe (for eksempel en løkke på grund af en dårligt planlagt omdirigering), så afbryd det med Ctrl-C og gennemgå kommandoerne. Undgå at bruge det samme inputmønster som navnet på outputfilen i samme bibliotek.
Denne gennemgang vil gøre dig klar til nemt at udskrive fra konsollen: Du vil være fortrolig med Out-Printer og PRINT, du vil vide, hvordan du forbereder og filtrerer filer, måler indhold, søger efter strenge og undgår faldgruber som omdirigeringsløkker. Med disse dele kan du samle robuste, repeterbare og hurtige strømninger der sender præcis det, du ønsker, til den printer, du ønsker, uden at være afhængig af den grafiske brugerflade.
Passioneret forfatter om bytes-verdenen og teknologien generelt. Jeg elsker at dele min viden gennem skrivning, og det er det, jeg vil gøre i denne blog, vise dig alle de mest interessante ting om gadgets, software, hardware, teknologiske trends og mere. Mit mål er at hjælpe dig med at navigere i den digitale verden på en enkel og underholdende måde.