Basis van Linux en de opdrachtregel

$ echo "aaa bab" | sed 's/a/x/'

Wat is de uitvoer van het bovenstaande sed-commando, dat tekens vervangt?

  1. Axaa bab
  2. Bxaa bxb
  3. Cxxx bxb
Antwoord en toelichting tonen

Antwoord: A. xaa bab

Bij sed vervangt s/voor/na/ op elke regel alleen de eerste gevonden overeenkomst. De eerste a op deze regel is het eerste teken, dus de uitvoer is xaa bab. Om alle overeenkomsten op de regel te vervangen, zet je g (global) aan het einde, zoals in s/a/x/g; dan is de uitvoer xxx bxb. Er wordt per regel vervangen, dus als een bestand meerdere regels heeft, wordt ook zonder g op elke regel de eerste overeenkomst vervangen.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van Linux en de opdrachtregel

  1. Wat drukt de laatste awk in de bovenstaande sessie af?
  2. Welke beschrijving van de bestanden die worden gevonden als „find /data -name "*.log" -mtime +7 -size +100M” met GNU find wordt uitgevoerd, is juist?
  3. Om een proces te stoppen dat niet meer reageert, wordt aangeraden eerst „kill <proces-ID>” te gebruiken en „kill -9 <proces-ID>” alleen als het proces daarmee niet stopt. Wat is de reden?
  4. Terwijl in een terminal het langdurige ./sim.sh draait, wil je in dezelfde terminal andere commando's gebruiken. Wat gebeurt er als je op Ctrl+Z drukt en daarna bg uitvoert?
  5. Op een server die via SSH is bereikt, werd een langdurige taak gestart met „./run.sh &”, en toen de verbinding werd verbroken, stopte de taak ook. Wat is de meest geschikte manier om de taak te starten zodat die blijft draaien nadat de verbinding is verbroken?