Fish Shell:
Ta bort citattecken från en sträng
Hur gör man:
Fish har inbyggd magi för denna typ av uppgift. Använd string
-funktionen utan att bryta en svett. Kika på dessa trollformler:
# Exempel med enkla citattecken
set quoted "'Hej, världen!'"
set unquoted (string trim --chars \"\'\" $quoted)
echo $unquoted # Utdata: Hej, världen!
# Samma sak med dubbla citattecken
set double_quoted "\"Hej, universum!\""
set unquoted (string trim --chars \"\'\" $double_quoted)
echo $unquoted # Utdata: Hej, universum!
Djupdykning
Tillbaka i kommandoradens stenålder, skulle du brottas med sed
eller awk
för att ta bort citattecken; en riktig djungel av omvända snedstreck och kryptiska flaggor. Fishs string
-funktion är från en nyare era, vilket gör koden renare och mer intuitiv.
Alternativ i andra skal kan fortfarande luta sig på dessa gamla verktyg eller kan använda sina egna inbyggda metoder som bashs parameterexpansion eller zshs modifierare.
string
-funktionen går utöver att trimma citattecken. Det är en schweizisk armékniv för strängoperationer i Fish. Med string
kan du skiva, tärna, dela, sammanfoga, eller till och med regex-matcha strängar direkt i din terminal.
Se också
Fördjupa dig i string
med hjälp av den officiella dokumentationen:
För nostalgi eller när du skriptar med mer traditionella skal, kolla in: