prevod kodovani win na iso

Pavel Kankovsky peak na argo.troja.mff.cuni.cz
Středa Prosinec 17 17:23:30 CET 2003


On Wed, 17 Dec 2003, Petr Sigut wrote:

> for i in `ls -l |wc -l`

A tohle jako melo udelat co? vysledkem ls -l | wc -l je cislo rovne poctu
polozek v aktualnim adresari zvetsenemu o 1. To mi nepripada jako
smysluplny seznam pro nejakou iteraci.

> iconv -f CP1250 -t ISO8859-2 $i > ~/$1

Timto se provede prekodovani souboru (bez tech kejklu s <br>) a vysledek
se zapise do souboru, jehoz relativni cesta vuci domacimu adresari
uzivatele (za predpokladu, ze to bezi pod shellem, ktery interpretuje
~/) je urcena prvni argumentem skriptu.

Ma to dve chyby: 1. osklive to zhavaruje, kdyz neni zadane zadne jmeno
(bude se pokouset zapisovat do adresare), 2. pokud by ta smycka, ve ktere
to je, skutecne pres neco iterovala, pak by se to vsechno napsalo pres
sebe do jednoho mista.

A pak samozrejme detaily jako chybejici uvozovky kolem promennych apod.

Cili chyba bude mezi zidli a klavesnici. Pritom je to tak jednoduche.
Napr. neco jako

cd /zdrojovyadresar
for i in *; do
  < "$i" iconv -f cp1250 -t iso8859-2 | sed 's/$/<br>/' > /cilovyadresar/"$i"
done

(Neni dobre soubory prepisovat na miste. Jednak to clovek stejne musi
delat pres pomocny docasny soubor, jednak se blbe osetruje situace, kdy je
konverzni program spusten na jeden soubor vicekrat.)

--Pavel Kankovsky aka Peak  [ Boycott Microsoft--http://www.vcnet.com/bms ]
"Resistance is futile. Open your source code and prepare for assimilation."



Další informace o konferenci Linux