nl.phhsnews.com


nl.phhsnews.com / De uitvoer van een opdracht opslaan in een bestand in Bash (ook bekend als de Linux- en macOS-terminal)

De uitvoer van een opdracht opslaan in een bestand in Bash (ook bekend als de Linux- en macOS-terminal)


Wanneer u een opdracht uitvoert bij de bash-prompt, wordt gewoonlijk de uitvoer van die opdracht afgedrukt commando rechtstreeks naar de terminal, zodat u het onmiddellijk kunt lezen. Maar bash geeft je ook de mogelijkheid om de uitvoer van een opdracht om te leiden naar een tekstbestand, zodat je de uitvoer later kunt bekijken.

Dit werkt in bash op elk besturingssysteem, van Linux en macOS tot Windows 10's Ubuntu- gebaseerde bash-omgeving.

Optie één: uitvoer naar alleen een bestand omleiden

Om bash-omleiding te gebruiken, voert u een opdracht uit, geeft u de operator>of>>op, en geef vervolgens het pad op van een bestand waarnaar u de uitvoer wilt omleiden

  • >stuurt de uitvoer van een opdracht om naar een bestand en vervangt de bestaande inhoud van het bestand.
  • >>stuurt de uitvoer om van een opdracht naar een bestand, waarbij de uitvoer wordt toegevoegd aan de bestaande inhoud van het bestand.

Technisch verwijst dit naar "stdout" - de standaarduitvoer, wat het scherm is naar een bestand.

Hier is een eenvoudig voorbeeld. Met de opdrachtlsworden bestanden en mappen in de huidige map vermeld. Zo. Wanneer u de volgende opdracht uitvoert, geeftlseen lijst met bestanden en mappen in de huidige map. Maar het zal ze niet op het scherm afdrukken - het zal ze opslaan in het bestand dat u opgeeft.

ls> / path / to / file

U hoeft het pad naar een bestaand bestand niet op te geven. Geef een geldig pad op en bash maakt een bestand op die locatie.

Als u de inhoud van het bestand bekijkt, ziet u de uitvoer van hetls-commando. Met de opdrachtcatwordt de inhoud van een bestand naar de terminal afgedrukt:

cat / path / to / file

Vergeet niet dat de operator>de bestaande inhoud vervangt van het bestand met de uitvoer van het commando. Als u de uitvoer van meerdere opdrachten in één bestand wilt opslaan, gebruikt u in plaats hiervan de operator>>. Met de volgende opdracht voegt u bijvoorbeeld systeeminformatie toe aan het bestand dat u opgeeft:

uname -a >> / path / to / file

Als het bestand nog niet bestaat, maakt bash het bestand. Anders zal bash de bestaande inhoud van het bestand alleen laten en de uitvoer toevoegen aan het einde van het bestand.

Wanneer u de inhoud van het bestand bekijkt, ziet u dat de resultaten van uw tweede opdracht zijn toegevoegd aan het einde van het bestand:

U kunt dit proces zo vaak herhalen als u wilt om de uitvoer aan het einde van het bestand toe te voegen.

zoals het omleiden van uitvoer met de

>of>>operatoren, omdat u de uitvoer van de opdracht in de terminal niet zult zien. Dat is waar hettee-commando voor is. Het T-commando drukt de invoer af die het ontvangt op het schermen slaat het tegelijkertijd op naar een bestand. Om de uitvoer van een commando naar

teete pipen, drukt u het af op uw scherm en sla het op in een bestand, gebruik de volgende syntaxis:opdracht | tee / path / to / file

Hiermee wordt alles in het bestand vervangen door de uitvoer van de opdracht, net als de operator

>De uitvoer van een opdracht pipen naar

tee, afdrukken naar uw scherm en opslaan in een bestand, maar toevoegen aan het einde van het bestand:opdracht | tee -a / path / to / file

Hiermee wordt de uitvoer aan het einde van het bestand toegevoegd, net als de operator

>>.GERELATEERD:

De beginnershandleiding bij Shell Scripting: De basis De bash-shell bevat enkele extra, geavanceerde operators die soortgelijke functies uitvoeren. Ze zijn vooral handig als je bash-scripts schrijft. Raadpleeg het hoofdstuk I / O-omleiding in de Advanced Bash-Scripting Guide voor meer informatie.


Een station wissen en formatteren in Windows

Een station wissen en formatteren in Windows

De meeste harde schijven komen "vooraf geformatteerd" en zijn klaar voor gebruik deze dagen. Maar af en toe moet u er misschien zelf een formatteren. Opmaak verwijdert bijvoorbeeld meestal de meeste gegevens op een schijf, waardoor het een snellere manier is om een ​​grote schijf te wissen dan eenvoudigweg alles erop te verwijderen.

(how-top)

De DNS-cache opnieuw instellen op macOS

De DNS-cache opnieuw instellen op macOS

Als u op websites werkt, moet u af en toe de DNS-cache van uw computer opnieuw instellen, met name na het bewerken van records of het wijzigen van hosts. Hoewel het leegmaken van de DNS-cache op Windows eenvoudig is met een speciale opdracht, moeten Mac-gebruikers een kleine tijdelijke oplossing gebruiken.

(how-top)