Tekst naar het scherm uitvoeren met behulp van het Linux Echo-commando

click fraud protection

Deze handleiding laat zien hoe u tekst kunt uitvoeren naar de terminalvenster de... gebruiken Linux echo commando.

Op zichzelf gebruikt in de terminal is het echo-commando niet bijzonder nuttig, maar wanneer het als onderdeel van het script wordt gebruikt, kan het worden gebruikt om instructies, fouten en meldingen weer te geven.

Voorbeeldgebruik van het Linux Echo-commando

In zijn eenvoudigste vorm is de eenvoudigste manier om tekst naar de terminal uit te voeren als volgt:

echo "hallo wereld"

Het bovenstaande commando geeft de woorden "Hallo Wereld" naar het scherm (minus de aanhalingstekens).

Linux echo basisuitvoer

Standaard voert de echo-instructie een nieuw regelteken uit aan het einde van de tekenreeks.

Probeer de volgende instructie in een terminalvenster om dit te testen:

echo "hallo wereld" && echo "tot ziens wereld"

U zult zien dat het resultaat als volgt is:

Hallo Wereld
vaarwel wereld

U kunt het nieuwe regelteken weglaten door de min-schakelaar (-n) als volgt toe te voegen:

echo -n "hallo wereld" && echo "tot ziens wereld"
Linux echo zonder nieuwe regel

Het resultaat van de bovenstaande opdracht is als volgt:

hallo wereld vaarwel wereld

Speciale tekens gebruiken

Een ander ding om over na te denken bij het gebruik van de echo-instructie, is hoe deze met speciale tekens omgaat.

Linux-echo met speciale tekens

Probeer bijvoorbeeld het volgende in een terminalvenster:

echo "hallo wereld\r\ntot ziens wereld"

In een ideale wereld zouden de \r en \n fungeren als speciale tekens om een ​​nieuwe regel toe te voegen, maar dat doen ze niet. Het resultaat is als volgt:

hallo wereld\r\ntot ziens wereld

U kunt speciale tekens inschakelen met behulp van het echo-commando door de schakeloptie -e als volgt op te nemen:

echo -e "hallo wereld\r\ntot ziens wereld"

Dit keer is het resultaat als volgt:

Hallo Wereld
vaarwel wereld

U kunt zich natuurlijk in de situatie bevinden waarin u een tekenreeks probeert uit te voeren die als een speciaal teken zou worden behandeld en u wilt dat niet. Gebruik in dit scenario een hoofdletter e als volgt:

echo -E "hallo wereld\r\ntot ziens wereld"

Welke speciale tekens worden verwerkt met de schakeloptie -e?

  • \\ backslash
  • \een waarschuwing
  • \b backspace
  • \c produceer geen verdere output
  • \e ontsnappen
  • \f formulierfeed
  • \n nieuwe regel
  • \r regelterugloop
  • \t horizontale tab
  • \v verticale tab
  • \ 0NNN octale waarde met 1 tot 3 cijfers
  • \xHH byte met hexadecimale waarde
Linux echo met andere speciale tekens

Laten we er een paar uitproberen. Voer het volgende uit: commando in een terminal:

echo -e "hel\blo wereld"

De bovenstaande opdracht zou het volgende opleveren:

hel wereld

Het is duidelijk niet echt wat je op het scherm zou willen uitvoeren, maar je begrijpt dat backslash b de voorgaande letter verwijdert.

Probeer nu het volgende in een terminalvenster:

echo -e "hallo\c wereld"

Deze opdracht voert alles uit tot de backslash en c. Al het andere wordt weggelaten, inclusief de nieuwe regel.

Lijnkarakter en koetsretour

Dus wat is het verschil tussen een nieuw regelteken en een regelterugloop? Het nieuwe regelteken verplaatst de cursor naar de volgende regel, terwijl de regelterugloop de cursor terug naar de linkerkant verplaatst.

Linux echo met return en nieuwe regel

Voer als voorbeeld het volgende in uw terminalvenster in:

echo -e "hallo\nwereld"

De uitvoer van de bovenstaande opdracht plaatst de twee woorden op verschillende regels:

Hallo
wereld-

Probeer dit nu eens in een terminalvenster:

echo -e "hallo\rwereld"

Het verschil tussen een nieuwe regel en een regelterugloop zal heel duidelijk worden, aangezien het volgende als uitvoer wordt weergegeven:

wereld-

Het woord hallo werd weergegeven, de regelterugloop bracht de cursor naar het begin van de regel en het woord wereld werd weergegeven.

Het wordt een beetje duidelijker als je het volgende probeert:

echo -e "hallo\rhi"

De output van het bovenstaande is als volgt:

Hallo. 

In werkelijkheid gebruiken veel mensen nog steeds de \r\n-notatie bij het uitvoeren naar een nieuwe regel. Vaak kom je echter al weg met een \n.