uconv(1)

Från Wiki.linux.se -Linux wikipedia på Svenska.
Hoppa till navigering Hoppa till sök


NAMN

uconv – konvertera data från en teckenkodning till en annan

SYNOPSIS

uconv [-h, -?, --help] [-V, --version] [-s, --silent] [-v, --verbose]
      [-l, --list | -l, --list-code kod | --default-code |
       -L, --list-transliterators]
      [--canon]
      [-x translitterering]
      [--to-callback callback | -c]
      [--from-callback callback | -i]
      [--callback callback]
      [--fallback | --no-fallback]
      [-b, --block-size storlek]
      [-f, --from-code kodning]
      [-t, --to-code kodning]
      [--add-signature]
      [--remove-signature]
      [-o, --output fil]
      [fil...]

BESKRIVNING

uconv konverterar, eller transkoderar, varje angiven fil från en teckenkodning till en annan.

Om ingen fil anges läser uconv från standardindata.

Transkodningen görs med Unicode som mellankodning. Det innebär att data först konverteras från ursprunglig kodning till Unicode och därefter från Unicode till målkodningen.

Om en kodning inte anges, eller anges som:

-

används standardkodningen.

Att köra uconv utan angiven kodning är därför ett enkelt sätt att validera och sanera datafiler för vidare användning av verktyg som kräver data i standardkodningen.

När uconv körs kan man ange callbacks som används för att hantera ogiltiga tecken i indatan eller tecken som inte kan transkoderas till målkodningen.

Vissa kodningar erbjuder till exempel ett standardersättningstecken som kan användas för att representera sådana tecken.

Andra callbacks ger en användbar visuell representation av ogiltiga data.

uconv kan också köra en angiven translitterering på de transkoderade data.

I så fall sker translittereringen som ett mellansteg efter att data har konverterats till Unicode.

Translittereringen kan vara antingen:

  • en lista med translitteratornamn separerade med semikolon
  • en mer komplex regeluppsättning i ICU:s format för translittereringsregler

För transkodning är uconvs optioner kompatibla med iconv(1), vilket gör det lätt att ersätta iconv i skript.

Det är dock inte säkert att kodningsnamnen som används av uconv och ICU är samma som de som används av iconv(1).

Informationsoptioner, som -l och --list, kan också ge utdata i ett något annat och mer lättparsad format än vissa iconv-varianter, exempelvis GNU iconv.

OPTIONER

-h, -?, --help

Visa hjälp om användning och avsluta.

-V, --version

Visa versionen av uconv och avsluta.

-s, --silent

Undertryck meddelanden under körning.

-v, --verbose

Visa extra informationsmeddelanden under körning.

-l, --list

Lista alla tillgängliga kodningar och avsluta.

-l, --list-code kod

Lista endast kodningen kod och avsluta.
Om kod inte är en korrekt kodning avslutas programmet med fel.

--default-code

Lista endast namnet på standardkodningen och avsluta.

-L, --list-transliterators

Lista alla tillgängliga translitteratorer och avsluta.

--canon

Om den används med -l, --list eller --default-code skrivs listan med kodningar i ett format kompatibelt med convrtrs.txt(5).
Om den används med -L eller --list-transliterators skrivs endast ett translitteratornamn per rad.

-x translitterering

Kör angiven translitterering på de transkoderade Unicode-data och använd den translittererade datan som indata för transkodning till målkodningen.

--to-callback callback

Använd callback för att hantera tecken som inte kan transkoderas till målkodningen.
Se avsnittet CALLBACKS.

-c

Utelämna ogiltiga tecken från utdatan.
Samma som:
--to-callback skip

--from-callback callback

Använd callback för att hantera tecken som inte kan transkoderas från ursprungskodningen.
Se avsnittet CALLBACKS.

-i

Ignorera ogiltiga sekvenser i indatan.
Samma som:
--from-callback skip

--callback callback

Använd callback för att hantera både tecken som inte kan transkoderas från ursprungskodningen och tecken som inte kan transkoderas till målkodningen.

--fallback

Använd fallback-mappning vid transkodning från Unicode till målkodningen.

--no-fallback

Använd inte fallback-mappning vid transkodning från Unicode till målkodningen.
Detta är standard.

-b, --block-size storlek

Läs indata i block om storlek byte åt gången.
Standardblockstorlek är:
4096

-f, --from-code kodning

Ange datans ursprungliga kodning till kodning.

-t, --to-code kodning

Transkoda data till kodning.

--add-signature

Lägg till Unicode-signaturtecknet U+FEFF, alltså BOM, om utdata-teckenuppsättningen stöder det och inte ändå lägger till ett.

--remove-signature

Ta bort Unicode-signaturtecknet U+FEFF, alltså BOM.

-o, --output fil

Skriv transkoderade data till fil.

CALLBACKS

uconv stöder callbacks för att hantera ogiltiga data.

Callbacks kan anges för båda riktningarna:

  • från ursprunglig kodning till Unicode, med --from-callback
  • från Unicode till målkodning, med --to-callback

Vilka callbacks som faktiskt stöds visas när uconv körs med:

-h
--help

substitute

substitute

Skriv kodningens ersättningssekvens, eller Unicode-ersättningstecknet:

U+FFFD

vid transkodning till Unicode.

skip

skip

Ignorera ogiltiga data.

stop

stop

Stoppa med ett fel när ogiltiga data påträffas.

Detta är standard-callback.

escape

escape

Samma som:

escape-icu

escape-icu

escape-icu

Ersätt saknade tecken med en sträng i formatet:

%Uhhhh

för tecken i plan 0.

För tecken i plan 1 och uppåt används:

%Uhhhh%Uhhhh

där hhhh är det hexadecimala värdet för en av UTF-16-kodenheterna som representerar tecknet.

Tecken från plan 1 och uppåt skrivs som ett par UTF-16-surrogatkodenheter.

escape-java

escape-java

Ersätt saknade tecken med en sträng i formatet:

\uhhhh

för tecken i plan 0.

För tecken i plan 1 och uppåt används:

\uhhhh\uhhhh

där hhhh är det hexadecimala värdet för en av UTF-16-kodenheterna.

Tecken från plan 1 och uppåt skrivs som ett par UTF-16-surrogatkodenheter.

escape-c

escape-c

Ersätt saknade tecken med en sträng i formatet:

\uhhhh

för tecken i plan 0, och:

\Uhhhhhhhh

för tecken i plan 1 och uppåt.

Här är hhhh och hhhhhhhh de hexadecimala värdena för Unicode-kodpunkten.

escape-xml

escape-xml

Samma som:

escape-xml-hex

escape-xml-hex

escape-xml-hex

Ersätt saknade tecken med en sträng i formatet:

&#xhhhh;

där hhhh är det hexadecimala värdet för Unicode-kodpunkten.

escape-xml-dec

escape-xml-dec

Ersätt saknade tecken med en sträng i formatet:

&#nnnn;

där nnnn är det decimala värdet för Unicode-kodpunkten.

escape-unicode

escape-unicode

Ersätt saknade tecken med en sträng i formatet:

{U+hhhh}

där hhhh är det hexadecimala värdet för Unicode-kodpunkten.

Den hexadecimala strängen är av variabel längd och kan använda 4 till 6 siffror.

Detta är det format som ofta används i litteratur för att ange en Unicode-kodpunkt.

Klamrarna gör det lätt att känna igen ersättningarna i utdata.

EXEMPEL

Konvertera data från en given kodning till plattformens kodning:

uconv -f kodning

Kontrollera om en fil innehåller giltiga data för en viss kodning:

uconv -f kodning -c fil >/dev/null

Konvertera en UTF-8-fil till en angiven kodning och säkerställ att resultatet fungerar i alla HTML-versioner:

uconv -f utf-8 -t kodning \
    --callback escape-xml-dec fil

Visa namnen på Unicode-kodpunkterna i en UTF-fil:

uconv -f utf-8 -x any-name fil

Skriv namnet på en Unicode-kodpunkt vars värde är känt, här U+30AB:

echo '\u30ab' | uconv -x 'hex-any; any-name'; echo

Exempel på utdata:

{KATAKANA LETTER KA}{LINE FEED}

Namnen avgränsas med klamrar. Även namnet på radslutstecknet visas.

Normalisera UTF-8-data med Unicode NFKC, ta bort alla styrtecken och mappa Katakana till Hiragana:

uconv -f utf-8 -t utf-8 \
      -x '::nfkc; [:Cc:] >; ::katakana-hiragana;'

VARNINGAR OCH FEL

uconv rapporterar fel vid den första ogiltiga byte som påträffas.

Detta kan förvirra användare av GNU iconv(1), som rapporterar fel vid den första byten i en ogiltig sekvens.

För flerbytekodningar kan detta innebära att uconvs felposition ligger senare i indataströmmen än vad GNU iconv skulle rapportera.

Rapporteringen av felpositioner när en translitterator används kan vara felaktig eller saknas.

I sådana fall rapporterar uconv offset i utdataströmmen där felet uppstod.

FÖRFATTARE

  • Jonas Utterstroem
  • Yves Arrouye

VERSION

76.0.1

UPPHOVSRÄTT

Copyright (C) 2000-2005 IBM, Inc. and others.

SE ÄVEN

KOLOFON

Denna sida är en del av projektet ICU, International Components for Unicode.

Information om projektet finns på:

http://site.icu-project.org/home

Felrapporter för manualsidan hänvisas till:

http://site.icu-project.org/bugs

Sidan hämtades från projektets uppströms Git-förråd:

https://github.com/unicode-org/icu

den 24 maj 2026.

Vid den tidpunkten var den senaste hittade commiten daterad den 22 maj 2026.

Om du upptäcker renderingsproblem i HTML-versionen av sidan, eller anser att det finns en bättre eller mer aktuell källa, kan du skicka e-post till:

man-pages@man7.org

HÄNVISAD FRÅN

KORT SAMMANFATTNING

uconv är ICU:s verktyg för att konvertera text mellan kodningar och samtidigt kunna använda Unicode-translitterering.

Konvertera från UTF-8 till annan kodning:

uconv -f utf-8 -t ISO-8859-1 fil.txt

Konvertera från en kodning till plattformens standardkodning:

uconv -f ISO-8859-1 fil.txt

Lista alla kodningar:

uconv -l

Visa standardkodningen:

uconv --default-code

Lista translitteratorer:

uconv -L

Ignorera ogiltiga sekvenser i indatan:

uconv -i -f utf-8 fil.txt

Hoppa över tecken som inte kan skrivas i målkodningen:

uconv -c -f utf-8 -t ascii fil.txt

Ta bort BOM/signatur:

uconv --remove-signature -f utf-8 -t utf-8 fil.txt

Sidslut

Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/uconv.1.html Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Bromma Datorservice som har sponsrat Linux.se med webbhotell.