Ga naar inhoud
  • 0

[Bash] Eenvoudig scriptje om een string te bewerken


anoniem

Vraag

Ik wat zit te rommelen met een BASH-scriptje waarmee ik een string wil bewerken. Ik kom er vooralsnog niet uit. Wat ik wil bereiken is: als de eerste zes karakters van een string gelijk zijn aan een (tweede) string van zes karakters worden die eerste zes karakters vervangen door een (derde) string van zeven karakters . Dus (in een soort quasi BASH-scripptaal) iets als: #!/bin/bash if STRING[1-6]="abcdef" then STRING="tuvwxyz"&STRING[7-einde] else #dit is natuurlijk niet echt nodig, maar wel informatief STRING=STRING fi Op dit moment zie ik door de vele GNU/Linux bomen (overal vind je wel informatie, maar net niet dat wat je zoekt!) het bos niet meer. Wie helpt mij op weg?
Link naar reactie

4 antwoorden op deze vraag

Aanbevolen berichten

  • 0
Wat mij betreft doen we hier ook programmeervragen :-) Je kan zoiets proberen (tip: koop een goed boek over Bash programming, of neem de bash man en info pages door. Staat ECHT ALLES in! De bash manpage uitprinten kan met [b:1c77a09602]man -t bash | lpr[/b:1c77a09602]) [code:1:1c77a09602] #!/bin/bash #begint met "abcdef" ? string=$1 # eerste argument op de opdrachtregel if [ "${string:0:6}" = "abcdef" ] then string="tuvwxyz${string:6}" fi [/code:1:1c77a09602] de "[" is eigenlijk een shortcut voor de "test" instructie, dus het volgende kan ook: [code:1:1c77a09602] if test "${string:0:6}" = "abcdef" then string="tuvwxyz${string:6}" fi [/code:1:1c77a09602] of: [code:1:1c77a09602] test "${string:0:6}" = "abcdef" && string="tuvwxyz${string:6}" [/code:1:1c77a09602]Zie man bash, onder "Parameter Expansion"
Link naar reactie
  • 0
Dank voor de antwoorden, die hielpen mij (mede) even over een door punt heen. Helaas is het achterliggende probleem nog niet opgelost, maar daar gooi ik een nieuw onderwerp op dit forum tegaan. (En alhoewel ik zo langzamerhand wel opkijk van de mogelijkheden die BASH-scripts je geven ... echt programmeren durf ik het - bij mijn scripts -nog niet te noemen.)
Link naar reactie

Doe mee aan dit gesprek

Om te reageren, moet je eerst inloggen. Dit doe je door rechtsboven op inloggen te klikken.

Gast
Antwoord op deze vraag...

×   Geplakt als verrijkte tekst.   Plak in plaats daarvan als platte tekst

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...