Dostosuj rozmiary buforów i wierszy w programie PowerShell i CMD

Ostatnia aktualizacja: 03/10/2025
Autor: Isaac
  • Widoczny rozmiar zależy od bufora, okna i źródła. Najpierw dostosuj bufor/okno, a następnie źródło.
  • Użyj MODE CON i Właściwości do szybkich i trwałych zmian; Rejestr umożliwia replikację ustawień.
  • W SAC bufor ma rozmiar 80x24, strona z | more i wklej za pomocą SHIFT+INSERT, aby uniknąć utraty danych wyjściowych.
  • Windows Wersja 10 dodaje funkcję przeciągania, zmiany rozmiaru, zmianę układu tekstu i krycie, aby zapewnić komfortową pracę.

Buforowanie i zawijanie wierszy w CMD i PowerShell

Podczas pracy z konsolą w systemie Windows należy dostosować rozmiar bufora ekranu a liczba linii w oknie może decydować o płynnej sesji lub nieznośnym doświadczeniu. Co więcej, w środowiskach administracji zdalnej (takich jak dostęp szeregowy z SAC w maszyny wirtualne), aby uniknąć utraty informacji, kluczowe jest, aby wiedzieć, jak prawidłowo przycinać lub powiększać konsolę i dzielić dane wyjściowe na strony.

W tym przewodniku powiem Ci w sposób bezpośredni i pełen polecenia, jak wszystko skonfigurować CMD y PowerShell: od podstawowe elementy sterujące projektem i kolorów, poprzez polecenia MODE i COLOR, aż po trwałość poprzez Rejestr, ulepszenia konsoli w systemie Windows 10 i użycie w wymagających scenariuszach, takich jak Maszyna wirtualna platformy Azure z SACZobaczysz również, do czego służy interfejs API konsoli systemu Windows służący do określania rozmiarów buforów/okien i jak to wszystko współpracuje z systemem Windows. terminal.

Czym jest bufor ekranu i jaki ma związek z oknem

Bufor ekranu to siatka komórek znaków (szerokość x wysokość), a każda konsola ma skojarzone okno, które wyświetla prostokątną część tego bufora. okno nie może przekroczyć Rozmiar bufora lub to, co ekran dopuszcza w zależności od rozmiaru czcionki. Dlatego jeśli okno jest większe niż bufor, niektóre operacje zakończą się niepowodzeniem.

Funkcje API systemu Windows pomagają zrozumieć i dostosować te ograniczenia: PobierzInfo o buforze ekranu konsoli zwraca rozmiar bufora, pozycję okna i maksymalny możliwy rozmiar podany dla bufora/źródła/ekranu, podczas gdy PobierzNajwiększyRozmiarOknaKonsoli Oblicza maksymalny rozmiar okna, ignorując rozmiar bufora. Aby powiększyć lub pomniejszyć, użyj Ustaw rozmiar bufora ekranu konsoli (zmienia rozmiar bufora) i UstawInformacjeOknaKonsoli (zmienia rozmiar lub położenie okna) z uwzględnieniem podanych ograniczeń.

Konfiguracja okna konsoli

Dostosuj rozmiar bufora i liczbę wierszy w CMD

Do szybkiej regulacji z poziomu samej konsoli, polecenie TRYB KONTROLI To klasyczna metoda: zdefiniuj kolumny (COLS) i wiersze (LINES). Typowym przykładem byłoby skonfigurowanie kompaktowej konsoli z 70 kolumnami i 9 wierszami: MODE CON cols=70 lines=9. Ta metoda wpływa na rozmiar okna i bufora w jednej sztuce.

Jeśli wolisz podejście stałe i szczegółowe, użyj Właściwości konsoli (kliknij prawym przyciskiem myszy na tytuł > Właściwości). W zakładce Opcje aktywuj Szybka edycja e Wprowadzenie Aby szybko wkleić i zaznaczyć tekst, ustaw Historię poleceń: Rozmiar bufora na 999 i Liczba buforów na 5 (większe zachowywanie wiersza podczas przewijania). Na karcie Układ podnieś Wysokość bufora (na przykład 2500) i dostosuj rozmiar oraz położenie okna; jeśli odznaczysz opcję Pozwól systemowi określić położenie okna, możesz ustawić konkretne współrzędne.

Aby dostosować sposób czytania i estetykę, wybierz czcionkę i jej rozmiar na karcie Źródłoi definiuje colores na karcie Kolory. Z poziomu wiersza poleceń możesz również zmieniać kolory za pomocą COLOR i dwucyfrowy atrybut szesnastkowy (tło i tekst). Na przykład: COLOR 0E użyj czarnego tła i żółtego tekstu; to jest przydatne do monitorowania konsol w ciemnych pomieszczeniach.

Jeśli chcesz, aby określone ustawienia zostały zachowane i stosowane domyślnie, system Windows zapisuje je w Rejestrze. Najważniejsze klucze: HKCU\Console\ (domyślnie) i HKCU\Console\%SystemRoot%_system32_cmd.exe (dotyczy tylko cmd.exe). Możesz eksportować/importować wartości takie jak QuickEdit, Rozmiar bufora ekranu, Rozmiar okna, Liczba buforów historii, Pozycja okna o Rozmiar bufora historii z plikiem .REG, aby odtworzyć ustawienia bez konieczności ręcznej konfiguracji.

Ponadto program startowy CMD obsługuje Autorun aby wyświetlać komunikaty lub uruchamiać akcje przy każdym otwarciu. W HKCU\Software\Microsoft\Command Processor tworzy (lub edytuje) wartość ciągu Autorun i przypisać na przykład: ECHO "Bienvenido a la consola"Jest to rozwiązanie idealne dla środowisk wsparcia, w których wymagane jest powitanie lub wstępny monit.

  Poprawka: system Windows Home nie mógł znaleźć sterownika dla karty społecznościowej

Przydatną sztuczką jest spakowanie ustawień do partiaPołącz rozmiar i kolor w taki sposób: @ECHO OFF & mode con cols=46 lines=9 & COLOR 1F & ECHO Variables...Dzięki temu otrzymasz okna o zdefiniowanych wymiarach i kolorach, co jest idealnym rozwiązaniem w przypadku skryptów, które nie wymagają całego ekranu.

Ustawienia z trybem i kolorem

PowerShell i ustalanie rozmiarów: co możesz, a czego nie możesz zrobić

PowerShell używa tego samego silnik konsoli (conhost.exe) niż CMD, więc dziedziczy większość tego samego zachowania: widoczny rozmiar zależy od bufora, okna i rozmiaru czcionki. Jeśli dostosujesz te parametry we Właściwościach, zobaczysz ten sam efekt w programie PowerShell.

W scenariuszach konsoli szeregowej z konsolą SAC (Specjalna Konsola Administracyjna) ograniczenie jest większe: środowisko narzuca zmniejszony bufor 80×24 i bez przewijania wstecz, dlatego zaleca się paginację z | more W długich poleceniach. Aby przejść dalej, użyj spacji (strona) lub Enter (linia). Skróty wklejania również ulegają zmianie: na konsoli szeregowej polecenie wklejania jest SHIFT+INSERT.

Jeśli zazwyczaj prosisz o skrót klawiaturowy zmień rozmiar czcionki W locie ścieżka dostępu to nadal Właściwości > Źródło. Na nowoczesnych konsolach można zmienić rozmiar okna, przeciągając rogi, a dane wyjściowe można dostosować za pomocą opcji Wyjście tekstu dostosowane do zmiany rozmiaru, ale w materiale, który tu omawiamy, nie ma udokumentowanego uniwersalnego skrótu klawiaturowego.

Używanie kolorów, wysokości bufora lub linii z poziomu programu PowerShell działa równie dobrze, jak z poziomu CMD, ponieważ są to właściwości konsoli. Aby zautomatyzować konsole za pomocą powtarzających się parametrów wizualnych, utwórz profile lub skrypty, które je stosują. TRYB y KOLOR na początku sesji lub skonfiguruj Właściwości okna przypięte do określonych skrótów.

Korzystanie z SAC w systemie Windows i Azure: limity rozmiaru i triki związane ze stronicowaniem

Na maszynach wirtualnych z systemem Windows (w tym Azure) SAC jest obecny od wersji Windows Server 2003, ale jest wyłączony. Polega on na sacdrv.sys, usługi sacsvr i proces sacsess.exePodczas otwierania okna poleceń w programie SAC, sacsess.exe włócznia cmd.exe w działającym systemie operacyjnym, skąd można uruchomić program PowerShell, zarządzać usługami lub korzystać z funkcji sieciowych i zapory sieciowej.

Z powodu ograniczony bufor 80x24 bez przewijania, pamiętaj o dodaniu | more do dowolnego polecenia szczegółowego. Aby wkleić do konsoli szeregowej: SHIFT+INSERTW przypadku długich skryptów często lepszym rozwiązaniem jest pisanie poleceń w lokalnym edytorze i wklejanie ich do programu SAC, aby uniknąć problemów z krótkim buforem.

Przydatne polecenia administracyjne w CMD w SAC: włącz RDP z reg add en HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server i w ścieżce zasad, jeśli ma to zastosowanie; zarządzaj usługą pulpitu zdalnego za pomocą sc (sc query termservice, sc config, sc start/stop); i dotknij siatki netsh (pokaż interfejsy, wymuś DHCP za pomocą netsh interface ip set address ... source=dhcp).

Do diagnostyki łączności, świst y telnet (po włączeniu klienta za pomocą DISM) nadają się do szybkiego testu; w nowoczesnym PowerShellu lepiej Test-NetConnection (wliczając porty). Rozdzielczość DNS Jest to zweryfikowane za pomocą nslookup o Resolve-DnsNameJeśli podejrzewasz zaporę sieciową, możesz wyświetlić listę określonych reguł lub tymczasowo wyłączyć profile za pomocą netsh advfirewall set allprofiles state off i reaktywować za pomocą ... on (nie zatrzymuj MPSSVC ani BFE, gdyż spowoduje to całkowitą utratę łączności).

W przypadku kont lokalnych w CMD: net user /add, net localgroup Administrators <usuario> /add, net user <usuario> /active:yes. W programie PowerShell: New-LocalUser, Add-LocalGroupMember y Enable-LocalUser (we wcześniejszych wersjach korzysta z WMI). Przydatna jest znajomość SID wbudowanego konta administratora (S-1-5-21-*-500).

  Dowiedz się, jak naprawić błąd braku pliku Urlmon.dll lub jego niewykrycia

Dziennik zdarzeń: w CMD, wevtutil qe umożliwia filtrowanie według poziomu, dostawcy i przedziału czasu za pomocą XPath (przykłady z EventID=11 lub audyt 4624); w programie PowerShell, Get-WinEvent z -FilterXPath y -MaxEvents Dla Ciebie to bez różnicy, tylko lepsze formatowanie. Aby wymienić oprogramowanie, wmic product Działa (uwaga na wpływ); w PowerShell możesz również sprawdzić WMI i odinstalować za pomocą .Uninstall().

Integralność systemu: sfc /scannow y dism /online /cleanup-image /scanhealth wykryć uszkodzenia; pozwala NTFS z icacls eksportować/zapisywać/przywracać listy kontroli dostępu i przejmować nad nimi kontrolę takeown w razie potrzeby. Czyszczenie nieistniejących urządzeń PNP za pomocą RUNDLL32.exe ... pnpclean.dll,RunDLL_PnpClean /Devices /Maxclean. Wymuś aktualizację zasad za pomocą gpupdate /force. Uruchom ponownie za pomocą shutdown /r /t 0 (o Restart-Computer z -Force).

Korzystanie z SAC i zdalnej administracji

Zmiana rozmiaru według pikseli, a nie według kolumn/wierszy

Częstym nieporozumieniem jest chęć naprawy okna 600 x 125 pikseli Dokładnie z programu PowerShell. Klasyczna konsola jest zaprojektowana w kolumnach/liniach, a równoważność z pikselami zależy od czcionka i jej rozmiar. Tak więc niezawodnym sposobem jest: 1) wybranie czcionki/rozmiaru (Właściwości > Czcionka), 2) dostosowanie bufora/okna za pomocą MODE CON lub z zakładki Układ i 3) jeśli to konieczne, dostosuj położenie/okno za pomocą Właściwości.

Jeśli potrzebujesz programowej precyzji, natywny interfejs API oferuje Ustaw rozmiar bufora ekranu konsoli y UstawInformacjeOknaKonsoliNależy jednak pamiętać, że okno nie może przekraczać rozmiaru bufora, a rzeczywisty maksymalny rozmiar zależy od ekranu i źródła; PobierzNajwiększyRozmiarOknaKonsoli podaje górną granicę bez uwzględniania bufora.

W systemie Windows 10 możesz przeciągnąć róg, aby zmienić rozmiar okna, a także skorzystać z opcji Wyjście tekstu dostosowane do zmiany rozmiaru Po włączeniu tekst jest zawijany, aby zapobiec przewijaniu w poziomie w mniejszych oknach. To rozwiązanie jest zbawienne podczas zmiany układu konsol na monitorach NOC lub ekrany ścienne.

Ulepszenia konsoli w systemie Windows 10, które pomagają w kwestii rozmiaru

Konsola zyskuje skróty Ctrl (skopiuj/wklej jak w mobilne i webowe (nowoczesny), rozszerzony wybór tekstu z klawiatury i obsługa wybór opakowania między wierszami, jak w edytorze. Dodatkowo istnieje możliwość filtrowania treści schowek aby przekonwertować cudzysłowy i inne nieobsługiwane znaki, unikając problemów podczas wklejania.

Kolejna nowość: możesz zmień rozmiar, przeciągając okno; gdy to zrobisz, system automatycznie zaktualizuje wymiary bufora i okna. Dla tych, którzy dużo edytują, aktywuj Tekst wyjściowy dostosowany po zmianie rozmiaru Jest to istotne, ponieważ powoduje zawinięcie długich linii podczas zmniejszania ich rozmiaru.

Ze względów estetycznych lub w celu nałożenia na inne aplikacje, karta Kolory integruje kontrolę Krycie od 30% do 100%. Przy 30% okno staje się praktycznie przezroczyste; jest to przydatne monitor dzienniki bez pełnego omówienia narzędzi wsparcia.

Jeśli widzisz pole Korzystanie ze starszej konsoli włączone, odznacz je, aby włączyć te nowoczesne funkcje. Wiele z nich jest wyszarzonych, gdy włączony jest tryb starszej wersji, więc Wyłącz to i ponownie otwórz konsolę.

Terminal Windows: tworzenie kopii zapasowej ustawień i profili

Terminal Windows centralizuje profile CMD/PowerShell/WSL i ich ustawienia na żywo settings.json en %LocalAppData%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState. Przed dotknięciem drobnych regulacji, wykonaj backup kopiowanie pliku do bezpiecznej ścieżki (na przykład, D:\Backup) z: copy /y /v %LocalAppData%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json D:\Backup.

Ten JSON można edytować za pomocą Notatnika, tam możesz go przypiąć rozmiary czcionek, motywy, krycie, kolory i zachowania przewijania dla każdego profilu, dzięki czemu możesz otwierać konsole w spójny sposób, o pożądanym wyglądzie i rozmiarze, bez konieczności ręcznego klikania za każdym razem.

Operacje sieciowe i zapory sieciowej: kluczowe polecenia, za które będziesz wdzięczny na małych konsolach

W przypadku małych konsol najlepiej jest używać zwięzłych poleceń: Testuj połączenie sieciowe (PowerShell) wznów pingowanie i testowanie portu za pomocą -Port; w CMD zainstaluj TelnetClient z DISM i portami testowymi telnet host 80. Dla DNS: Resolve-DnsName (PS) lub nslookup (CMD). Jest najbardziej efektywny w oknach z niewielką liczbą linii i w połączeniu z | more w SAC.

  Prawidłowy sposób wymiany fraz za pomocą emoji w wiadomościach na iPhonie

Zapora sieciowa: lista reguł według portu Get-NetFirewallPortFilter w programie PowerShell (lub obiekcie COM) hnetcfg.fwpolicy2 (w starszych systemach) i kontroluje profile z Set-NetFirewallProfileW CMD, netsh advfirewall jest nadal aktualny. Unikaj zatrzymywania się MPSSVC lub BFE, w przeciwnym razie cała sieć ulegnie awarii.

Usługi, rejestrowanie i system: podstawy sesji zdalnych

W przypadku usług pulpitu zdalnego program PowerShell z usługą WMI (Get-WmiObject Win32_Service) pokazuje ci konto domowe, rodzaj boot, ścieżka i PID, a także stan. Zmień typ uruchomienia za pomocą Set-Service i zależności od HKLM\SYSTEM\CurrentControlSet\Services\TermService. Rozpocznij/zatrzymaj za pomocą Start-Service/Stop-Service.

W sytuacjach związanych z rejestrem program PowerShell obsługuje klucze za pomocą Get-ItemProperty y Set-ItemProperty Aby sprawdzić lub włączyć RDP. Jeśli zasady grupy wymuszają wartości w HKLM\Software\Policies\Microsoft\Windows NT\Terminal ServicesPamiętaj, że wprowadzona przez Ciebie zmiana może zostać nadpisana przez następną aktualizację polityki.

Diagnostyka systemu: systeminfo y wmic os Podają wersję, kompilację, datę instalacji, strefę czasową i ostatnie uruchomienie. tryb awaryjny, bcdedit /enum i filtruj według bezpieczny but. Natychmiastowy restart z shutdown /r /t 0 o Restart-Computer jeśli już jesteś w programie PowerShell.

Stronicowanie, kopiowanie, przenoszenie i wyszukiwanie treści: produktywność programu PowerShell

Małe konsole zmuszają do szybkiego pisania. Pobierz zawartość z parametrami takimi jak -TotalCount o -Tail pomaga zobaczyć początek lub koniec długich plików. Aby połączyć bez pętli, użyj gc *.txt -Exclude granben.txt > granben.txt, unikając umieszczania pliku wyjściowego w samym pliku wejściowym.

Channeling (|) mnoży produktywność: gc archivo.txt | measure -Line -Word -Character liczy wiersze, słowa i znaki. Wybierz ciąg (sls) wyszukuje wzorce w wielu plikach z symbolami wieloznacznymi i podaje kontekst bez konieczności otwierania plików pojedynczo.

Metadane instancji na platformie Azure do sprawdzania łączności

Na maszynie wirtualnej platformy Azure sprawdź Usługa metadanych instancji Z poziomu gościa przetestuj łączność z usługami platformy Azure. W programie PowerShell: $im = Invoke-RestMethod -Headers @{'metadata'='true'} -Uri http://169.254.169.254/metadata/instance?api-version=2017-08-01 -Method GET a następnie $im | ConvertTo-Json zobaczyć Typ os, Rozmiar maszyny wirtualnej, Identyfikator maszyny wirtualnej, Nazwa, nazwa_grupy_zasobów lub prywatne/publiczne adresy IP. Jeśli to odpowiada, gość przybywa do hosta Azure.

Pamiętaj, że karty sieciowe platformy Azure muszą używać DHCP w systemie operacyjnym gościa, nawet przy statycznym adresie IP przypisanym w usłudze Azure. Ustaw adapter za pomocą Set-NetIPInterface -DHCP Enabled lub z WMI w starszych wersjach.

Aby sprawdzić adaptery: Get-NetAdapter (lub WMI) wyświetla status, opis i PROCHOWIEC. Włącz za pomocą Enable-NetAdapter lub tzw. WMI .Enable()Zapytania te są kompaktowe i przyjazne dla konsol krótkoterminowych.

Na koniec pamiętaj, że w sesjach SAC z ograniczonym buforem usunięcie PSOdczytLinii z Remove-Module PSReadLine Unikaj niechcianych dodanych znaków podczas wklejania bloków tekstu; sprawdź najpierw Get-Module PSReadLine.

Dzięki temu wszystkiemu możesz prawidłowo dostosować rozmiar konsoli (za pomocą bufora i okna), zachować czytelność danych wyjściowych oraz uruchamiać administrację i diagnostykę lokalnie i zdalnie za pomocą SAC, bez utraty danych.

Opanowanie rozmiarów bufora, okna i strumienia wyjściowego nie jest wyłącznie kwestią wygody: pozwala na szybszą pracę, rozmieszczanie okien na dużych monitorach i zachowanie kontroli nad sesjami pomocy technicznej nawet wtedy, gdy środowisko narzuca ograniczenia 80x24. TRYB KONTROLIWłaściwości, Rejestr, API konsoli, ulepszenia systemu Windows 10 i dyscyplina stronicowania | more, masz wszystko, aby CMD i PowerShell dostosowywały się do Ciebie, a nie odwrotnie.