IConv a hromadná změna kódování u souborů
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

IConv a hromadná změna kódování u souborůIConv a hromadná změna kódování u souborů

 
Hledat
Moderní platforma pro vytvoření vašeho nového webu – Wix.com.
Nyní už můžete mít web zdarma.
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno

IConv a hromadná změna kódování u souborů

Google       Google       12. 5. 2009       18 863×

Stručný návod, jak rychle změnit kódování souborů pomocí nástroje IConv.

Reklama
Reklama

Když jsem přebíral jeden rozsáhlejší web, byl jsem nucen ho celý překódovat z UTF-8. Jednalo se o několik tisíc souborů, takže ruční změna byla vyloučena. Naštěstí to jde udělat velice snadno pomocí shellu a prográmku IConv. Stačí si vytvořit několikařádkový shell skript a celý převod je potom otázkou několika sekund.

IConv

IConv je velmi jednoduchý program. Přesný popis použití získáte pomocí známého příkazu man iconv. Na začátku je důležité zjistit, jestli program zná potřebné kódování. K tomu slouží parametr -l. Jelikož je často v systému zavedeno velké množství znakových sad, je vhodné tento výpis stránkovat:

iconv -l | more

Poslední dva parametry, které nás budou nyní zajímat, určují vstupní a výstupní kódování. Vstupní kódování zadáme pomocí parametru -f (from) a výstupní pomocí parametru -t (to). Na konci příkazu musíme samozřejmě uvést jméno souboru, který chceme převádět:

iconv -f windows-1250 -t UTF-8 test.txt

IConv posílá výstup na standardní výstup systému, proto je užitečné ho přesměrovat do nového souboru:

iconv -f windows-1250 -t UTF-8 test.txt > test-conv.txt

Vlastní převod

Konverze velkého množství souborů se dá realizovat jednoduchým shellovým skriptem:

for F in $(find $1 -iname "*.html")
do
        if [ -f $F ]; then
                iconv -f windows-1250 -t utf-8 $F > ${F}1
                mv ${F}1 $F
        fi
done

První řádek je inicializace cyklu, který rekurzivně projde zadaný adresář (proměnná $1) a jeho podadresáře a postupně vybírá soubory s koncovkou html (samozřejmě lze zvolit jakoukoliv jinou). Uvnitř cyklu nejprve ověříme, že se jedná skutečně o soubor a ne o adresář, a provedeme konverzi. Konvertovaný soubor uložíme do dočasného souboru, kterým v dalším kroku přepíšeme původní soubor. Zde jsem pro jednoduchost nazval dočasný soubor stejně jako původní, pouze jsem na konec přidal znak 1. V reálu je lepší použít nějaký složitější řetězec, aby se vyloučilo přepsání jiného souboru, příp. ukládat nové soubory do jiného adresáře.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

4 názory  —  4 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Zdeněk MoravecAutor se pohybuje v oblasti vývoje nových materiálů. Mezi jeho koníčky patří tvorba webových aplikací, programování v jazycích Java, .NET (C#), Perl, elektronika a sport (běh). Hojně využívá sázecí systém LaTeX.
Web     Facebook    

Nové články

Obrázek ke článku SODAT vidí budoucnost datové bezpečnosti ve strojovém učení

SODAT vidí budoucnost datové bezpečnosti ve strojovém učení

Firmy chrání svá citlivá data často nedostatečně. Podle průzkumu společnosti SODAT se v minulém roce setkalo až 80 % z nich s bezpečnostním incidentem ztráty nebo úniku dat. Jedna z pilotních firem, která testovala novou verzi řešení SODAT Protection & Analytics 2.0pro bezpečností analýzu a monitoring dat díky novince zjistila, kdo z disku smazal důležité výkresy a mohla na incident včas reagovat.

Reklama
Reklama
Obrázek ke článku Kontrolujete pracovní emaily i na dovolené? 7 tipů odborníka, jak nepřijít o data

Kontrolujete pracovní emaily i na dovolené? 7 tipů odborníka, jak nepřijít o data

Letní měsíce jsou pro většinu zaměstnanců spojené s každoroční dovolenou. Z údajů Českého statistického úřadu vyplývá, že v roce 2017 podnikli Češi přes 13 milionů delších cest (tzn. s více než čtyřmi noclehy). Přitom právě na období července, srpna a září připadá více než 7,5 milionů z nich. Nicméně tradiční představu o dovolené jako o čase, kdy má práci na starost někdo jiný, Češi boří. 

Obrázek ke článku 10 SEO mýtů, které už nemusíte v roce 2018 řešit

10 SEO mýtů, které už nemusíte v roce 2018 řešit

„Kolik má být na stránce klíčových slov?“, „Nemáš vyplněný meta tag keywords, to nebude fungovat.“, „Katalogy jsou mrtvý“. Také jste už slyšeli některé z těchto otázek? Pojďme si na ně konečně jednou provždy odpovědět.

Obrázek ke článku Trend Micro pomohlo usvědčit viníky v mezinárodním případu Scan4You

Trend Micro pomohlo usvědčit viníky v mezinárodním případu Scan4You

Společnost Trend Micro Incorporated, globální lídr v oblasti kybernetické bezpečnosti, oznámila podrobnosti o své úzké spolupráci s FBI v případu Scan4You. Trend Micro se podílelo na identifikaci osob, které byly spojeny se službou Scan4You Counter Antivirus, což vedlo k jejich odsouzení.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032018 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý