Puffer- und Zeilengrößen in PowerShell und CMD anpassen

Letzte Aktualisierung: 03/10/2025
Autor: Holger
  • Die sichtbare Größe hängt vom Puffer, Fenster und der Quelle ab; passen Sie zuerst den Puffer/das Fenster und dann die Quelle an.
  • Verwenden Sie MODE CON und Eigenschaften für schnelle oder dauerhafte Änderungen. Mit der Registrierung können Sie Einstellungen replizieren.
  • In SAC ist der Puffer 80 x 24, Seiten mit | mehr und Einfügen mit UMSCHALT+EINFÜGEN, um Ausgabeverluste zu vermeiden.
  • Windows 10 fügt Größenänderung durch Ziehen, Textumbruch und Deckkraft für komfortables Arbeiten hinzu.

Puffer- und Zeilenumbruch in CMD und PowerShell

Bei der Arbeit mit der Windows-Konsole kann die Anpassung der Bildschirmpuffergröße und der Zeilenanzahl im Fenster entscheidend für eine reibungslose Sitzung sein. Darüber hinaus ist es in Remote-Administrationsumgebungen (z. B. serieller Zugriff mit SAC auf virtuellen Maschinen ) unerlässlich, die Konsole korrekt zuzuschneiden oder zu zoomen und die Ausgabe paginieren zu können, um Informationsverlust zu vermeiden.

In diesem Leitfaden zeige ich Ihnen anhand eines einfachen Ansatzes und zahlreicher Befehle , wie Sie alles über CMD und PowerShell konfigurieren : von grundlegenden Design- und Farbeinstellungen über die Befehle MODE und COLOR bis hin zur Datenspeicherung über die Registry, den Konsolenverbesserungen in Windows 10 und deren Verwendung in anspruchsvollen Szenarien wie Azure-VMs mit SAC . Sie erfahren außerdem, was die Windows-Konsolen-API zur Größenanpassung von Puffern/Fenstern beinhaltet und wie alles mit dem Windows Terminal zusammenarbeitet.

Was ist der Bildschirmpuffer und welche Beziehung besteht zwischen ihm und dem Fenster?

Der Bildschirmpuffer ist ein Raster aus Zeichenzellen (Breite x Höhe), und jede Konsole verfügt über ein zugehöriges Fenster, das einen rechteckigen Ausschnitt dieses Puffers anzeigt. Das Fenster darf die Abmessungen des Puffers oder die durch die Schriftgröße festgelegten Bildschirmgrenzen nicht überschreiten. Ist das Fenster größer als der Puffer, schlagen bestimmte Operationen fehl.

Windows-API-Funktionen helfen dabei, diese Grenzwerte zu ermitteln und anzupassen: `GetConsoleScreenBufferInfo` gibt die Puffergröße, die Fensterposition und die maximal mögliche Größe basierend auf Puffer, Schriftart und Bildschirm zurück, während `GetLargestConsoleWindowSize` die maximale Fenstergröße unabhängig von der Puffergröße berechnet. Zum Vergrößern oder Verkleinern des Fensters werden `SetConsoleScreenBufferSize` (ändert die Puffergröße) und `SetConsoleWindowInfo` (ändert die Größe oder Position des Fensters) verwendet, wobei die oben genannten Einschränkungen zu beachten sind.

Konfiguration des Konsolenfensters

Puffergröße und Zeilenanzahl in CMD anpassen

Für eine schnelle Anpassung direkt von der Konsole aus kann der Befehl MODE CON Es ist der Klassiker: Definieren Sie Spalten (COLS) und Zeilen (LINES). Ein typisches Beispiel wäre die Einrichtung einer kompakten Konsole mit 70 Spalten und 9 Zeilen: MODE CON cols=70 lines=9Diese Methode beeinflusst die Fenster- und Puffergröße in einem Spiel.

Für eine präzise und dauerhafte Bearbeitung nutzen Sie die Konsoleneigenschaften (Rechtsklick auf den Titel > Eigenschaften). Aktivieren Sie auf der Registerkarte „Optionen“ die Schnellbearbeitung und das Einfügen für schnelles Einfügen und Auswählen. Passen Sie die Befehlshistorie an: Puffergröße auf 999 und Anzahl der Puffer auf 5 (dadurch bleiben Zeilen beim Scrollen erhalten). Erhöhen Sie auf der Registerkarte „Layout“ die Pufferhöhe (z. B. auf 2500) und passen Sie Größe und Position des Fensters an. Deaktivieren Sie „Systempositionsfenster“, um spezifische Koordinaten festzulegen.

Um das Lesen und die Ästhetik anzupassen, wählen Sie Schriftart und Größe auf der Registerkarte Quelle, und definieren Colores im Reiter Farben. Von der Kommandozeile aus können Sie die Farben auch mit COLOR und ein zweistelliges Hex-Attribut (Hintergrund und Text). Beispiel: COLOR 0E Verwenden Sie einen schwarzen Hintergrund und gelben Text. es ist nützlich zur Überwachung von Konsolen in dunklen Umgebungen.

Wenn Sie möchten, dass bestimmte Einstellungen dauerhaft übernommen werden, speichert Windows diese in der Registrierung. Die wichtigsten Schlüssel: HKCU\Console\ (Standard) und HKCU\Console\%SystemRoot%_system32_cmd.exe (spezifisch für cmd.exe). Sie können Werte exportieren/importieren wie QuickEdit, Bildschirmpuffergröße, Fenstergröße, Anzahl der Verlaufspuffer, Fensterposition o HistoryBufferSize mit einer .REG, um Ihre Einstellungen ohne manuelle Neukonfiguration zu replizieren.

Darüber hinaus unterstützt CMD Startup eine Autorun um bei jedem Öffnen Nachrichten anzuzeigen oder Aktionen auszuführen. In HKCU\Software\Microsoft\Command Processor erstellt (oder bearbeitet) den Stringwert Autorun und weisen Sie es beispielsweise zu: ECHO "Bienvenido a la consola"Es ist ideal für Supportumgebungen, in denen eine Begrüßung oder eine erste Eingabeaufforderung erforderlich ist.

  So reparieren Sie beschädigte Videos unter Windows: Vollständige Anleitung und effektive Lösungen

Ein praktischer Trick besteht darin, Einstellungen in ein Portion. Kombinieren Sie Größe und Farbe etwa so: @ECHO OFF & mode con cols=46 lines=9 & COLOR 1F & ECHO Variables...Dadurch erhalten Sie Fenster mit vordefinierten Abmessungen und Farben, perfekt für Skripte, die nicht den gesamten Bildschirm benötigen.

Einstellungen mit MODE und COLOR

PowerShell und Dimensionierung: Was Sie tun können und was nicht

PowerShell verwendet dieselbe Konsolen-Engine (conhost.exe) wie CMD und übernimmt daher einen Großteil ihres Verhaltens: Die sichtbare Größe hängt vom Puffer, der Fenstergröße und der Schriftgröße ab. Wenn Sie diese Parameter in den Eigenschaften anpassen, erzielen Sie in PowerShell denselben Effekt.

In seriellen Konsolenszenarien mit SAC (Special Administration Console) ist die Einschränkung größer: Die Umgebung erlegt eine reduzierter Puffer von 80×24 und ohne zurückzublättern, daher ist es ratsam, mit | more in langen Befehlen. Zum Weitergehen verwenden Sie die Leertaste (Seite) oder die Eingabetaste (Zeile). Auch die Einfüge-Tastenkombinationen ändern sich: Auf der seriellen Konsole wird Einfügen mit UMSCHALT+EINFG.

Wenn Sie üblicherweise eine Tastenkombination benötigen, um die Schriftgröße spontan zu ändern, ist die gängige Methode weiterhin „Eigenschaften > Schriftart“. Auf modernen Konsolen können Sie die Fenstergröße durch Ziehen an den Ecken anpassen, und die Ausgabe wird mithilfe der Option „Ausgabetext beim Ändern der Größe anpassen“ angepasst . In den hier verwendeten Materialien gibt es jedoch keine allgemein dokumentierte Tastenkombination dafür.

Farben, Puffergröße oder Linien lassen sich in PowerShell genauso gut verwenden wie in der Eingabeaufforderung, da es sich um Konsoleneigenschaften handelt. Um Konsolen mit wiederkehrenden visuellen Parametern zu automatisieren, erstellen Sie Profile oder Skripte, die MODUS und FARBE beim Sitzungsstart anwenden, oder konfigurieren Sie Fenstereigenschaften, die bestimmten Tastenkombinationen zugewiesen sind.

Verwenden von SAC unter Windows und Azure: Größenbeschränkungen und Paging-Tricks

Auf Windows-VMs (einschließlich Azure) ist SAC seit Windows Server 2003 vorhanden, aber deaktiviert. Es basiert auf sacdrv.sys, der Service sacsvr und der Prozess sacsess.exe. Beim Öffnen eines Befehlsfensters in SAC, sacsess.exe lanza cmd.exe innerhalb des laufenden Betriebssystems und von dort aus können Sie PowerShell starten, Dienste verwalten oder auf Netzwerk und Firewall tippen.

Wegen begrenzter Puffer 80x24 ohne Scrollen, denken Sie daran, hinzuzufügen | more zu jedem ausführlichen Befehl. So fügen Sie es in die serielle Konsole ein: UMSCHALT+EINFGBei langen Skripten ist es oft besser, Befehle in einem lokalen Editor zu schreiben und sie in SAC einzufügen, um Probleme mit kurzen Puffern zu vermeiden.

Nützliche Administrationsbefehle in CMD innerhalb von SAC: RDP aktivieren mit reg add en HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server und ggf. im Richtlinienpfad; verwalten Sie den Remotedesktopdienst mit sc (sc query termservice, sc config, sc start/stop); und berühren Sie das Netz mit netsh (Schnittstellen anzeigen, DHCP erzwingen mit netsh interface ip set address ... source=dhcp).

Zur Konnektivitätsdiagnose Klingeln y telnet (nach Aktivierung des Clients mit DISM) eignen sich für einen schnellen Test; in modernen PowerShell ist es besser Test-NetConnection (Anschlüsse inbegriffen). Die DNS-Auflösung Es wird überprüft mit nslookup o Resolve-DnsNameWenn Sie die Firewall vermuten, können Sie bestimmte Regeln auflisten oder Profile vorübergehend deaktivieren mit netsh advfirewall set allprofiles state off und reaktivieren mit ... on (Beenden Sie MPSSVC oder BFE nicht, da Sie sonst die Verbindung vollständig verlieren.)

Für lokale Konten in CMD: net user /add, net localgroup Administrators <usuario> /add, net user <usuario> /active:yes. In PowerShell: New-LocalUser, Add-LocalGroupMember y Enable-LocalUser (in früheren Versionen wird WMI verwendet). Es ist hilfreich, die SID des integrierten Administratorkontos zu kennen (S-1-5-21-*-500).

  So fügen Sie bibliografische Referenzen in Word Schritt für Schritt ein und verwalten sie

Ereignisprotokoll: In CMD, wevtutil qe ermöglicht das Filtern nach Level, Provider und Zeitintervall mit XPath (Beispiele mit EventID=11 oder Audit 4624); in PowerShell, Get-WinEvent mit -FilterXPath y -MaxEvents Mit besserer Formatierung ist es Ihnen egal. Um Software aufzulisten, wmic product Es funktioniert (achten Sie auf die Auswirkungen); in PowerShell können Sie auch WMI überprüfen und mit deinstallieren .Uninstall().

Systemintegrität: sfc /scannow y dism /online /cleanup-image /scanhealth Schäden feststellen; Genehmigungen NTFS mit icacls zum Exportieren/Speichern/Wiederherstellen von ACLs und zur Übernahme des Besitzes mit takeown ggf. Reinigung nicht vorhandener PNP-Geräte mit RUNDLL32.exe ... pnpclean.dll,RunDLL_PnpClean /Devices /Maxclean. Richtlinienaktualisierung erzwingen mit gpupdate /force. Neustart mit shutdown /r /t 0 (o Restart-Computer mit -Force).

Verwenden von SAC und Remote-Administration

Größenänderung nach Pixeln vs. nach Spalten/Zeilen

Ein häufiges Missverständnis ist der Wunsch, ein Fenster zu befestigen, um 600 × 125 Pixel genau von PowerShell. Die klassische Konsole ist durch Spalten/Zeilen gestaltet und die Äquivalenz zu Pixeln hängt von der Schriftart und ihre Größe. Der zuverlässige Weg ist also: 1) Schriftart/Größe wählen (Eigenschaften > Schriftart), 2) Puffer/Fenster anpassen mit MODE CON oder über die Registerkarte „Layout“ und 3) passen Sie die Position/das Fenster bei Bedarf über „Eigenschaften“ an.

Wenn Sie programmatische Präzision benötigen, bietet die native API die Methoden `SetConsoleScreenBufferSize` und `SetConsoleWindowInfo` . Beachten Sie jedoch, dass das Fenster die Puffergröße nicht überschreiten darf und die tatsächliche Maximalgröße von Bildschirm und Schriftart abhängt. `GetLargestConsoleWindowSize` gibt Ihnen diese Obergrenze an, ohne den Puffer zu berücksichtigen.

Unter Windows 10 lässt sich die Fenstergröße durch Ziehen an einer Ecke anpassen. Ist die Option „ Textausgabe beim Ändern der Größe anpassen“ aktiviert, wird der Text umgebrochen, um horizontales Scrollen in kleineren Fenstern zu verhindern. Diese Funktion ist besonders hilfreich beim Umordnen von Konsolen auf NOC-Monitoren oder Wanddisplays.

Konsolenverbesserungen in Windows 10, die bei der Größe helfen

Die Konsole bietet nun Strg- Tastenkombinationen (Kopieren/Einfügen wie in modernen Anwendungen ), erweiterte Textauswahlmöglichkeiten per Tastatur und Unterstützung für den Zeilenumbruch , genau wie in einem Texteditor. Zusätzlich gibt es eine Zwischenablagefilterung , die geschweifte Anführungszeichen oder andere nicht unterstützte Zeichen konvertiert und so Probleme beim Einfügen verhindert.

Eine weitere Neuerung: Sie können die Fenstergröße durch Ziehen ändern . Dabei werden Puffer und Fensterabmessungen automatisch aktualisiert. Für alle, die viel bearbeiten, ist die Aktivierung der Option „ Textausgabe beim Ändern der Größe umbrechen“ unerlässlich, da lange Zeilen beim Verkleinern des Fensters umgebrochen werden.

Aus ästhetischen Gründen oder um Überlappungen mit anderen Anwendungen zu vermeiden, bietet die Registerkarte „Farben“ eine Deckkraftregelung zwischen 30 % und 100 %. Bei 30 % wird das Fenster nahezu transparent; dies ist nützlich, um Protokolle zu überwachen , ohne die zugehörigen Tools vollständig zu verdecken.

Wenn das Kontrollkästchen „Legacy-Konsole verwenden“ aktiviert ist, deaktivieren Sie es, um diese modernen Funktionen zu aktivieren. Viele Funktionen sind im Legacy-Modus ausgegraut; deaktivieren Sie ihn daher und öffnen Sie die Konsole erneut.

Windows Terminal: Einstellungen und Profile sichern

Windows Terminal zentralisiert CMD/PowerShell/WSL-Profile und deren Einstellungen live in einem Einstellungen.json en %LocalAppData%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState. Bevor Sie Feineinstellungen vornehmen, Sicherungskopie Kopieren Sie die Datei in einen sicheren Pfad (z. B. D:\Backup) mit: copy /y /v %LocalAppData%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json D:\Backup.

Diese JSON-Datei kann mit Notepad bearbeitet werden; dort können Sie Schriftgrößen , Designs, Deckkraft, Farben und Scrollverhalten für jedes Profil festlegen. So erhalten Sie eine einheitliche Möglichkeit, Konsolen mit dem gewünschten Aussehen und der gewünschten Größe zu öffnen, ohne jedes Mal manuell klicken zu müssen.

Netzwerk- und Firewall-Operationen: Wichtige Befehle, für die Sie auf kleinen Konsolen dankbar sein werden

Bei kleinen Konsolen ist es am besten, prägnante Befehle zu verwenden: Test-NetConnection (PowerShell) Ping- und Porttests fortsetzen mit -Port; in CMD installieren TelnetClient mit DISM und Testports mit telnet host 80Für DNS: Resolve-DnsName (PS) oder nslookup (CMD). Es ist am effektivsten in Fenstern mit wenigen Zeilen und kombiniert mit | more im SAC.

  So verwenden Sie Hard Disk Sentinel zum Testen von LSI-über-SAS-Festplatten

Firewall: Regeln nach Port auflisten mit Get-NetFirewallPortFilter in PowerShell (oder das COM-Objekt hnetcfg.fwpolicy2 auf älteren Systemen) und steuert Profile mit Set-NetFirewallProfile. In CMD, netsh advfirewall ist weiterhin gültig. Vermeiden Sie es, anzuhalten MPSSVC oder BFE, sonst legen Sie das gesamte Netzwerk lahm.

Dienste, Protokollierung und System: Grundlagen für Remote-Sitzungen

Für Remotedesktopdienste ist PowerShell mit WMI (Get-WmiObject Win32_Service) zeigt Ihnen die Home-Konto, Art der Starten, Pfad und PID sowie den Status. Ändern Sie den Starttyp mit Set-Service und Abhängigkeiten von HKLM\SYSTEM\CurrentControlSet\Services\TermService. Starten/Stoppen mit Start-Service/Stop-Service.

In Registry-Situationen verarbeitet PowerShell Schlüssel mit Get-ItemProperty y Set-ItemProperty um RDP zu überprüfen oder zu aktivieren. Wenn eine Gruppenrichtlinie Werte in HKLM\Software\Policies\Microsoft\Windows NT\Terminal Services, denken Sie daran, dass Ihre Änderung durch die nächste Richtlinienaktualisierung überschrieben werden kann.

Systemdiagnose: systeminfo y wmic os Sie geben Ihnen Version, Build, Installationsdatum, Zeitzone und letzten Boot an. Für abgesicherter Modus, bcdedit /enum und filtern nach Safeboot. Sofortiger Neustart mit shutdown /r /t 0 o Restart-Computer wenn Sie bereits in PowerShell sind.

Seitenumbruch, Kopieren, Verschieben und Suchen von Inhalten: PowerShell-Produktivität

Kleine Konsolen zwingen Sie zum schnellen Tippen. Inhalt abrufen mit Parametern wie -TotalCount o -Tail hilft Ihnen, den Anfang oder das Ende langer Dateien zu sehen. Um ohne Schleife zu verketten, verwenden Sie gc *.txt -Exclude granben.txt > granben.txt, wodurch vermieden wird, dass die Ausgabedatei in die Eingabe selbst aufgenommen wird.

Die Kanalisierung (|) vervielfacht die Produktivität: gc archivo.txt | measure -Line -Word -Character zählt Zeilen, Wörter und Zeichen. Select-String (sls) sucht mit Platzhaltern in mehreren Dateien nach Mustern und gibt Ihnen Kontext, ohne dass Sie sie einzeln öffnen müssen.

Instanzmetadaten in Azure zur Überprüfung der Konnektivität

Überprüfen Sie auf einer Azure-VM die Instanz-Metadatendienst Testen Sie vom Gast aus die Konnektivität mit Azure-Diensten. In PowerShell: $im = Invoke-RestMethod -Headers @{'metadata'='true'} -Uri http://169.254.169.254/metadata/instance?api-version=2017-08-01 -Method GET und dann $im | ConvertTo-Json zu sehen osType, vmSize, vmId, Name, Ressourcengruppenname oder private/öffentliche IPs. Wenn dies antwortet, der Gast kommt beim Azure-Host an.

Denken Sie daran, dass Azure NICs verwenden müssen DHCP innerhalb des Gastbetriebssystems, auch mit einer statischen IP-Adresse in Azure. Stellen Sie den Adapter mit Set-NetIPInterface -DHCP Enabled oder mit WMI in älteren Versionen.

So überprüfen Sie Adapter: Get-NetAdapter (oder WMI) zeigt Status, Beschreibung und MACAktivieren mit Enable-NetAdapter oder das sogenannte WMI .Enable()Diese Abfragen sind kompakt und benutzerfreundlich für Kurzleitungskonsolen.

Denken Sie daran, dass in SAC-Sitzungen mit begrenztem Puffer das Entfernen PSReadLine mit Remove-Module PSReadLine Vermeiden Sie unerwünschte hinzugefügte Zeichen beim Einfügen von Textblöcken; prüfen Sie zuerst mit Get-Module PSReadLine.

Mit all dem oben Genannten können Sie Ihre Konsole (nach Puffer und Fenstergröße) richtig dimensionieren, die Ausgabe lesbar halten und Administration und Diagnose sowohl lokal als auch remote mit SAC durchführen, ohne Daten zu verlieren.

Die Beherrschung der Puffer-, Fenster- und Ausgabestreamgrößen dient nicht nur der Benutzerfreundlichkeit: Sie können damit schneller arbeiten, Fenster auf großen Monitoren positionieren und Supportsitzungen unter Kontrolle halten, selbst wenn die Umgebung 80x24-Grenzen vorgibt. MODE CON, Eigenschaften, Registrierung, Konsolen-API, Windows 10-Verbesserungen und die Disziplin des Paging mit | more, Sie haben alles, damit sich CMD und PowerShell an Sie anpassen und nicht umgekehrt.