Script Bash de conversion ISO8859 -> UTF8
Le
Nicolas FRANCOIS

--Sig_/xQjPROZ/0jWAeavMfTJz4_b
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Salut.
Je voudrais convertir tout mon travail sur des bouquins en LaTeX de
ISO8859-1 (c'est un vieux travail !) vers UTF-8.
J'ai trouvé un script que j'ai essayé d'adapter :
# start encoding
encodeFrom='ISO-8859-1'
# target encoding
encodeTo='UTF-8'
# finding files whose extensions correspond to the given parameter
for filename in ` find . -type f -name *.{$1}`
do
echo $filename
# saving source file
mv $filename $filename.save
# convert file
iconv -f $encodeFrom -t $encodeTo $filename.save -o $filename
# check that file is in unix mode
dos2unix $filename
done
Le problème : la commande 'find' ne fonctionne pas. En la testant
avec "set -v", j'obtiens :
find . -type f -name *.{$1}
J'ai fait quoi comme bêtises ? J'ai essayé avec un bouquin sur Ba=
sh
(en fait, deux), mais je n'ai pas bien compris ce que je faisais de
mal :-P
Même en essayant simplement de convertir les fichiers tex :
for filename in ` find . -type f -name *.tex`
J'obtiens :
find: les chemins doivent précéder l'expression : arithmetique.=
tex
Toute aide sera grandement appréciée :-)
bye
--
Nicolas FRANCOIS | /
http://nicolas.francois.free.fr | |__|
X--/\
We are the Micro$oft. __V
Resistance is futile.
You will be assimilated. darthvader penguin
--Sig_/xQjPROZ/0jWAeavMfTJz4_b
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature
--BEGIN PGP SIGNATURE--
Version: GnuPG v2
iQEcBAEBCAAGBQJYqGlkAAoJEMWIJ6bNjP4B9hoH/jlctpg8XG59FXWOei7UyMtu
zxkKmh7WC7C0iKFRZW/upvjMeSC/NCtNOjiHpCj3s0K7qc7a4cQ1sIDGZGm/hQgC
EadWMjbvrWEMszDI5ymioR6no9t+EnnQr8WQPxlsrriW07E7ZFWDYEzPy1VKFIAc
eHZt4y0HEUOsTWx0WoFrFhteXyW92Ed4g/5cxt/XDdNqgVHmTpDUIXI57P8XpEbT
L4JamSgAdkuoJtoHFn2D0ugphjk1kKSr0UBaKSTXYS4pLtbvdX1YNBc8/hLU8Nna
SMWdY98co9fVN77m5Wg+m15Ybvrrr4RaiNVwabsoXB4VVZ7SZR2/XoaxmxUh8fI=
=p1AR
--END PGP SIGNATURE--
--Sig_/xQjPROZ/0jWAeavMfTJz4_b--
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Salut.
Je voudrais convertir tout mon travail sur des bouquins en LaTeX de
ISO8859-1 (c'est un vieux travail !) vers UTF-8.
J'ai trouvé un script que j'ai essayé d'adapter :
# start encoding
encodeFrom='ISO-8859-1'
# target encoding
encodeTo='UTF-8'
# finding files whose extensions correspond to the given parameter
for filename in ` find . -type f -name *.{$1}`
do
echo $filename
# saving source file
mv $filename $filename.save
# convert file
iconv -f $encodeFrom -t $encodeTo $filename.save -o $filename
# check that file is in unix mode
dos2unix $filename
done
Le problème : la commande 'find' ne fonctionne pas. En la testant
avec "set -v", j'obtiens :
find . -type f -name *.{$1}
J'ai fait quoi comme bêtises ? J'ai essayé avec un bouquin sur Ba=
sh
(en fait, deux), mais je n'ai pas bien compris ce que je faisais de
mal :-P
Même en essayant simplement de convertir les fichiers tex :
for filename in ` find . -type f -name *.tex`
J'obtiens :
find: les chemins doivent précéder l'expression : arithmetique.=
tex
Toute aide sera grandement appréciée :-)
bye
--
Nicolas FRANCOIS | /
http://nicolas.francois.free.fr | |__|
X--/\
We are the Micro$oft. __V
Resistance is futile.
You will be assimilated. darthvader penguin
--Sig_/xQjPROZ/0jWAeavMfTJz4_b
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature
--BEGIN PGP SIGNATURE--
Version: GnuPG v2
iQEcBAEBCAAGBQJYqGlkAAoJEMWIJ6bNjP4B9hoH/jlctpg8XG59FXWOei7UyMtu
zxkKmh7WC7C0iKFRZW/upvjMeSC/NCtNOjiHpCj3s0K7qc7a4cQ1sIDGZGm/hQgC
EadWMjbvrWEMszDI5ymioR6no9t+EnnQr8WQPxlsrriW07E7ZFWDYEzPy1VKFIAc
eHZt4y0HEUOsTWx0WoFrFhteXyW92Ed4g/5cxt/XDdNqgVHmTpDUIXI57P8XpEbT
L4JamSgAdkuoJtoHFn2D0ugphjk1kKSr0UBaKSTXYS4pLtbvdX1YNBc8/hLU8Nna
SMWdY98co9fVN77m5Wg+m15Ybvrrr4RaiNVwabsoXB4VVZ7SZR2/XoaxmxUh8fI=
=p1AR
--END PGP SIGNATURE--
--Sig_/xQjPROZ/0jWAeavMfTJz4_b--
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Le samedi 18 février 2017 à 16:33 +0100, Nicolas FRANCOIS a à ©crit :
Tu dois mettre entre quote le pattern:
 for filename in ` find . -type f -name '*.tex'`
--
 Pascal Obry /  Magny Les Hameaux (78)
 The best way to travel is by means of imagination
  http://www.obry.net
 gpg --keyserver keys.gnupg.net --recv-key F949BD3B
--=-WFln0McxFf/fwWD19qMC
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: This is a digitally signed message part
Content-Transfer-Encoding: 7bit
-----BEGIN PGP SIGNATURE-----
iF0EABECAB0WIQTxD5aGZSsOlJ/NlMMY3KEj+Um9OwUCWKhrhgAKCRAY3KEj+Um9
O4MKAKCEvyYMknygioxnjsg+JFOsoNE2UwCgmg0HH8pUMhJ5RHfOWqHwB8SQ/bg =FLEY
-----END PGP SIGNATURE-----
--=-WFln0McxFf/fwWD19qMC--
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
Le Sat, 18 Feb 2017 16:33:49 +0100,
Nicolas FRANCOIS Merci les gars, ceci fonctionne comme je le veux :
for filename in ` find . -type f -name "*.$1"`
Merci à tous deux, avec un petit bonus à Jean-Jacques qui a à ©té plus
rapide ;-) (mais Pascal a apporté une variante à la réponse, donc loué
soit-il, lui aussi !).
bye
--
Nicolas FRANCOIS | /
http://nicolas.francois.free.fr | |__|
X--/\
We are the Micro$oft. __V
Resistance is futile.
You will be assimilated. darthvader penguin
--Sig_/3/lE_Noq.C+aMw0TRG_WmfC
Content-Type: application/pgp-signature
Content-Description: OpenPGP digital signature
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQEcBAEBCAAGBQJYqG68AAoJEMWIJ6bNjP4BtUYH/2oHACIPEi2PxyzG14Hpa5+R
mAXf6ytxpdxp0H6k+0EAVk4HvojQmD+krHbEW8BRs2zL6PiVMzLVNQeqh4xFylZg
A5Ye5KjkqVWQshw/R7og6fo1iZzMBXThkWWHNCkABUxlPC9UpnZHHuMZOlumW4VS
beKlmmX9Wl9UyXqNyrYtVv0kKWwbjLZxxENjjGhjMeZaK+TAWrxdTFRViClsfBsL
U6zuxTKc1ZxBD9gmYJzEMdlZsqfR45AfiQrAo7R58OLUfrcSsAnQ5Ic9q8HtVoAy
rcnPWHRlpFFrLqVo8aS2JcF/E8N9Xljmm7XSKO4sTj+yl2hv9wWW02BPkflhWGU =q1gs
-----END PGP SIGNATURE-----
--Sig_/3/lE_Noq.C+aMw0TRG_WmfC--
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
On Sat, Feb 18, 2017 4:33 PM, Nicolas FRANCOIS wrote:
Salut.
[ ⦠]
find: les chemins doivent précéder l'expression : arithmetique.tex
J'obtiens :
for filename in ` find . -type f -name *.tex`
Même en essayant simplement de convertir les fichiers tex :
Find ne s'utilise pas comme cela, mais plutôt
find . -type f -name "*. tex" -exec iconv {} ⦠;
Attention le ";" en fin de -exec est obligatoire !
Hope this help
-------------------------------------------- -------------
(V) Dhénin Jean-Jacques
( ..)Â 48, rue de la Justice 78300 Poissy
c(')(')
------------------------------ ---------------------------
------sinikael-?=_1-14874325152710.5102269639932
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
<xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
<o:PixelsPerInch>96</o:PixelsPerInch>
</o:OfficeDocumentSettings>
</xml>
<style>
a, body {
font-family: 'Calibri', Arial, sans-serif;
}
img {
border: none !important;
-ms-interpolation-mode:bicubic;
}
td {
mso-line-height-rule:exactly !important;
}
.mso-card-inner table {
border-collapse: collapse !important;
mso-table-lspace:0pt;
mso-table-rspace:0pt;
vertical-align: top;
}
.outlook-com-only {
display: none !important;
font-size: 0 !important;
}
#mso-one-whole {
width: 100% !important;
}
.border-outer,
.border-middle,
.border-inner {
border: none !important;
}
.border-middle,
.border-inner {
width: 100% !important;
}
.mso-border-outer,
.mso-border-middle,
.mso-border-inner {
padding: 1px;
}
.mso-border-outer { background-color: rgb(245, 255, 255); }
.mso-border-middle { background-color: rgb(223, 246, 255); }
.mso-border-inner { background-color: rgb(153, 176, 225); }
</style>
------sinikael-?=_1-14874325152710.5102269639932--
On Sat, Feb 18, 2017 at 04:56:41PM +0100, Nicolas FRANCOIS wrote:
[...]
Si le script s'exécute sous bash, tu devrais même éviter les backticks
et recourir à la syntaxe $() qui fait la même chose en plus lisible et
moins chiant quand il y a d'autres quotes :
for filename in $(find . -type f -name "*.$1")
Hih,
--
JFS.
"JF Straeten"
+1 d'autant que c'est la syntaxe préconisée, la syntaxe avec `` étant
considérée comme obsolète il me semble.
Bonjour, il n'y a pas que des administrateurs ici, c'est une liste
ouverte a tout utilisateur.
Paquet debian-installer dans reportbug
Je ne peux pas imaginer qu'un bug aussi important existe. Je pense
plutot que tu pensais etre en majuscule en tapant le mot de passe et que
tu ne l'etais pas, ou qu'au contraire tu l'a tape tout en majuscule. Il
y a de gros soucis avec la gestion des majuscules sous GNU/Linux en
UTF8: --
Bien cordialement, Stephane Ascoet
Bonjour
J'utilise GNU/Linux depuis 17 ans, je n'ai jamais rencontré ce
genre de problème, ni chez moi, ni sur d'autres postes de travail.
Par ailleurs, ton article semble daté...
--
Maderios
J'ai pourtant bien ce comportement incompréhensible sur une Wheezy sur
laquelle je n'ai pas appliqué la modification que j'ai mise au point...
et c'est ainsi sur toutes les Ubuntu et Debian depuis l'UTF8.
--
Bien cordialement, Stephane Ascoet
Je suis d'accord avec Maderios, jamais eu de problème ni sur ubuntu ni
sur Debian ni sur CentOS.
--
Daniel
"Depuis l'UTF8" ? Je ne comprends pas...
Ubuntu c'est... Ubuntu mais sûrement pas Debian...
Si tu as installé une Debian en réutilisant une conf ubuntu, ton
problème vient peut-être de là. Si c'est le cas, le plus simple est de
réinstaller Debian.
--
Maderios