Ta bort citattecken från en sträng

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: