Fish Shell:
Slette tegn som matcher et mønster
How to:
For å slette tegn i Fish Shell, bruk string replace. Eksempel fjerner alle ‘a’-er fra en streng:
echo "bananarama" | string replace -a "a" ""Output:
bnnrmFor å slette mønstre, bruk wildcards (stjernetegn):
echo "b123a456xyz789" | string replace -ar "[0-9]" ""Output:
baxyzInteraktivt, slett ‘xyz’ fra en variabel:
set myvar "helloxyzworld"
string replace -r "xyz" "" -- $myvar
echo $myvarOutput:
helloworldDeep Dive
Pattern matching har vært en del av programmering siden tidlige dager. Det er andre måter å gjøre det på i Unix-lignende systemer, som sed eller grep. Men Fish Shell forenkler prosessen med string-kommandoer.
Fish’s string kommandoer ble introdusert for lesbarhet og enkel bruk. Ulik tradisjonell ‘sed’, trenger du ikke å huske komplekse syntakser for vanlige oppgaver.
Implementasjonsdetaljer:
string replaceer bygd inn i Fish.-aflagget står for “all” - erstatt alle instanser.-raktiverer regex eller regulære uttrykk for avanserte mønstre.