Bonjour,
je souhaite créer un script qui permet de convertir les retours chariots unix et dos.
j'ai réalisé un premier script qui fonctionne correctement et qui permet de convertir les retours chariots UNIX en DOS :
le second script devrait convertir les retours chariots DOS en UNIX mais il ne fonctionne pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 #!/usr/bin/perl ###conversion retour chariot UNIX (LF) en DOS (CRLF) ###lecture et ecriture des fichiers en UTF8 open IN, "<:encoding(UTF-8)", "$ARGV[0]"; open OUT, ">:encoding(UTF-8)", "testOutDos.txt"; $/=undef; while($ligne = <IN>) { s/\n/\r/g;###conversion retour chariot unix en DOS print OUT $ligne; } close;
typiquement \n est traduit par LF
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 #!/usr/bin/perl ###conversion retour chariot DOS (CRLF) en UNIX (LF) ###lecture et ecriture des fichiers en UTF8 open IN, "<:encoding(UTF-8)", "$ARGV[0]"; open OUT, ">:encoding(UTF-8)", "testOutUnix.txt"; #$/=undef; while($ligne = <IN>) { s/\r/\n/g;###conversion retour chariot DOS en UNIX print OUT $ligne; } close;
et \r par CR
dans la pratique mon premier script fonctionne mais le second non.
si vous avez une idée merci.
Partager