Opdrachtregeluitvoer opslaan in bestand op Windows, Mac en Linux

Opdrachtregeluitvoer opslaan in bestand op Windows, Mac en Linux

Wanneer u een opdracht uitvoert in een Terminal-venster, wordt de uitvoer van de opdracht normaal gesproken naar de Terminal of het scherm afgedrukt, zodat u deze onmiddellijk kunt lezen. U kunt de uitvoer van een opdracht ook naar een bestand afdrukken als u het wilt opslaan.





Het opslaan van de uitvoer van een opdracht naar een bestand is handig als u een probleem probeert te diagnosticeren. Om hulp te krijgen van technische ondersteuning, moet u mogelijk bepaalde opdrachten op uw computer uitvoeren en de resultaten naar het ondersteuningsteam sturen. Dit is eenvoudig met behulp van uitvoeromleiding op de opdrachtregel.





Vandaag bespreken we hoe u de uitvoer van een opdracht naar een tekstbestand in de bash-shell op Windows, Mac en Linux kunt sturen.





Opmerking: We gebruiken de Mac Terminal in ons voorbeeld, maar het werkt op dezelfde manier in de bash-shell op Linux en in de nieuwe bash-shell in Windows 10 .

Uitvoer alleen naar een bestand omleiden

Er zijn twee operators voor het omleiden van de uitvoer van een opdracht naar een bestand in plaats van naar het scherm.



De > symbol maakt een nieuw bestand aan als het niet aanwezig is, of overschrijft het bestand als het al bestaat. De >> maakt ook een nieuw bestand aan als het niet aanwezig is, maar het voegt de tekst toe aan het einde van het bestand als het al bestaat, in plaats van het bestand te overschrijven.

Om de uitvoer van een opdracht naar een bestand om te leiden, typt u de opdracht, specificeert u de > of de >> operator en geef vervolgens het pad op naar een bestand waarnaar de uitvoer moet worden omgeleid. De opdracht ls geeft bijvoorbeeld de bestanden en mappen weer in de huidige map. Wanneer u de volgende opdracht uitvoert, wordt de lijst met bestanden en mappen naar de ls_output.txt bestand in de TerminalUitgang map.





Vervangen /pad/naar/bestand met het volledige pad naar het bestand dat u wilt gebruiken.

ls > /path/to/file

Dit is het commando voor ons voorbeeld.





automatisch sms-berichten doorsturen naar e-mail
ls > /Users/lorikaufman/TerminalOutput/ls_output.txt

Om de inhoud van het bestand in het Terminal-venster te bekijken, gebruikt u de kat commando zoals weergegeven in het volgende commando. Nogmaals, vervang /pad/naar/bestand met het volledige pad naar het bestand dat u wilt bekijken.

cat /path/to/file

De > operator vervangt de inhoud van een bestaand bestand elke keer dat u het gebruikt om de uitvoer om te leiden. Als u de uitvoer van meerdere opdrachten naar een enkel bestand wilt opslaan, gebruikt u de >> exploitant in plaats daarvan. Dit voegt de uitvoer van een opdracht toe aan het einde van het opgegeven bestand, als het al bestaat. Als het bestand niet bestaat, wordt er een nieuw aangemaakt.

We voegen bijvoorbeeld systeeminformatie toe aan het einde van het bestand dat we hierboven hebben gemaakt. Dus in de volgende regel uname -a is het commando, gevolgd door de >> omleidingsoperator. Vervolgens het volledige pad naar het bestand waaraan we de uitvoer van de . willen toevoegen je naam opdracht.

De -tot parameter in de je naam commando drukt alle beschikbare systeeminformatie af.

uname -a >> /Users/lorikaufman/TerminalOutput/ls_output.txt

Om het bestand met de toegevoegde informatie in het Terminal-venster te bekijken, voert u de volgende opdracht in, met het volledige pad naar uw bestand.

er is geen internetverbinding uw computer is offline
cat /Users/lorikaufman/TerminalOutput/ls_output.txt

Herhaal dit proces zo vaak als nodig is om opdrachtuitvoer aan het einde van het bestand toe te voegen.

Hier is nog een voorbeeld van het verzenden van de uitvoer van de ls commando als mappenboom, met submappen recursief vermeld (de R parameter) en één bestand per regel (de 1 parameter).

ls -1R > /Users/lorikaufman/TerminalOutput/dir_tree.txt

Dan gebruiken we de kat commando, zoals eerder vermeld om de inhoud van het bestand in het Terminal-venster te bekijken.

cat /Users/lorikaufman/TerminalOutput/dir_tree.txt

De > en >> operators geven de uitvoer van een opdracht niet op het scherm weer. De uitvoer wordt alleen naar een bestand gestuurd.

Als je de uitvoer naar een bestand wilt sturen en op het scherm wilt zien, gebruik dan de tee commando in plaats van de > en >> exploitanten.

Om de . te gebruiken tee commando moet je de uitvoer van het commando dat je uitvoert doorsluizen, zoals ls , naar de tee commando, met behulp van de pipe-operator, een verticale balk ( | ). Het volgende commando neemt bijvoorbeeld de uitvoer van de ls commando en pijpt het in de tee opdracht. De tee commando stuurt vervolgens die uitvoer naar het scherm en naar een bestand dat u opgeeft met behulp van het volledige pad naar het bestand.

windows 10 aanraakscherm inschakelen
ls | tee /Users/lorikaufman/TerminalOutput/ls_output.txt

De bovenstaande opdracht vervangt alle inhoud in het bestand of maakt een nieuwe aan als deze niet bestaat, net als de > exploitant. We gebruikten het volgende: kat commando om de inhoud van ons bestand in het Terminal-venster te bekijken.

cat /Users/lorikaufman/TerminalOutput/ls_output.txt

Om de . te gebruiken tee opdracht om uitvoer naar het scherm af te drukken en toe te voegen aan het einde van een bestand, voert u de volgende opdracht in. Hier voegen we volledige systeeminformatie toe aan het einde van het bestand met behulp van de uname -a commando, net zoals we deden met de >> operator, maar stuurt de uitvoer ook naar het scherm.

uname -a | tee -a /Users/lorikaufman/TerminalOutput/ls_output.txt

De volgende opdracht is de tee versie van het recursief afdrukken van een mappenboom naar een bestand en naar het scherm, één bestand op elke regel, net zoals we deden met de > exploitant.

ls -1R | tee /Users/lorikaufman/TerminalOutput/dir_tree.txt

Dan gebruiken we de kat commando opnieuw om de inhoud van het bestand te bekijken.

cat /Users/lorikaufman/TerminalOutput/dir_tree.txt

Maar wacht, er is meer

Er zijn veel meer manieren om uitvoer, inclusief fouten, om te leiden naar een bestand. U kunt lezen over de verschillende operators en commando's die worden gebruikt om de uitvoer om te leiden in de Hoofdstuk I/O-omleiding van de Advanced Bash Scripting Guide .

Mac-gebruikers moeten ook een bladwijzer maken onze Mac Terminal-commando's spiekbriefje .

Deel Deel Tweeten E-mail Verwijder deze Windows-bestanden en -mappen om schijfruimte vrij te maken

Wilt u schijfruimte op uw Windows-computer vrijmaken? Hier zijn de Windows-bestanden en -mappen die veilig kunnen worden verwijderd om schijfruimte vrij te maken.

Lees volgende
Gerelateerde onderwerpen
  • Linux
  • Mac
  • ramen
  • Terminal
  • Linux Bash Shell
Over de auteur Lori Kaufman(62 artikelen gepubliceerd)

Lori Kaufman is een freelance technisch schrijver die in de regio Sacramento, CA woont. Ze is een gadget- en tech-nerd die graag how-to-artikelen schrijft over een breed scala aan onderwerpen. Lori houdt ook van mysteries lezen, borduren, muziektheater en Doctor Who. Maak contact met Lori op LinkedIn .

Meer van Lori Kaufman

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren
Categorie Mac