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.


De NVIDIA SHIELD is de krachtigste set-top box die u kunt kopen

De NVIDIA SHIELD is de krachtigste set-top box die u kunt kopen

Er zijn veel streaming settopboxen die er zijn: de Apple TV, de Roku, de Amazon Fire TV ... en zeker, ze hebben elk hun voordelen. Maar als u wilt dat de settopbox het meest doet, die alles aankan dat u erover gooit en ruimte laat voor aanpassingen, dan is dat de NVIDIA SHIELD met Android TV. Laat me u vertellen waarom.

(how-top)

Dus je hebt zojuist een Google Home. Wat nu?

Dus je hebt zojuist een Google Home. Wat nu?

Dus je hebt een Google Home voor Kerstmis gescoord. Dat is geweldig, want dit is een moordenaar, een kleine slimme spreker die veel aan verschillende dingen kan doen - in feite kan het een beetje overweldigend zijn. Het goede nieuws is dat we jou gedekt hebben. Hier zijn enkele ideeën over waar je aan de slag moet met je nieuwe huis.

(how-top)