Aller au contenu

Probleme d'accents en ssh


Messages recommandés

Bonjour,

J'ai un problème d'accent lorsque je passe par SSH (j'utilise cygwin).

Je souhaite effectuer des modifications sur des fichiers situés sur le NAS, et passer par le partage windows ou via le partage réseau de mon HTPC est trop long (problème de temps d’accès je suppose). Je me suis donc connecté au NAS (DS414) en SSH et j'ai commencé les modifications jusqu'à ce que je tombe sur un accent.

sed -i 's/Czech Republic/R▒publique tch▒que/g' '/volume1/Voyage/listing.txt'

Lorsque je tape le texte, ceci s'affiche et c'est également ce que je retrouve dans le fichier texte.

J'ai pensé que le problème venait de cygwin et l'ai passé de UTF-8 à ISO-8859-1 ce qui a permit de corriger le problème d'affichage mais pas celui du fichier. Dans le terminal, j'ai ceci :

sed -i 's/France/Francé/g' '/volume1/Voyage/listing.txt'

mais dans le fichier, j'ai ça.

Franc�

Comment Faire pour insérer correctement les accents dans mes fichiers?

Lien vers le commentaire
Partager sur d’autres sites

La question est plutôt pourquoi utilises tu cygwin pour faire ça ?

=>un simple putty (si tu es sous Windows) ou le terminal de base (sur Linux, Unix, Mac, ...) devrait suffire pour faire des sed

Ton pb est que ton terminal SSH, ton utilisateur sous cygwin, le nas aussi et ton fichier peuvent chacun avoir leur encodage

  1. enlève cygwin de l'équation
  2. fais en sorte d'avoir le même encodage de bout en bout (UTF-8 de préférence)
  3. ouvre ton fichier avec un vrai éditeur (pas le bloc note), par exemple notepad++
Lien vers le commentaire
Partager sur d’autres sites

J'ai toujours utilisé notepad++. Si je pouvais m'en contenter, je l'aurais utilisé. L'exemple donné plus tôt sur un fichier ne représente absolument pas le nombre de documents ni la taille de son arborescence. (4 niveaux d'arborescence, et environ 5000 fichiers à corriger). La plupart de ces fichiers servent cependant à des programmes windows qui les modifient fréquemment et qui peuvent donc modifier l'encodage...

J'ai toujours utilisé cygwin sur mon PC windows pour mes fichiers locaux, mon HTPC et d'autres appareils de la maison sans aucun problème.

Là je me connecte presque pour la première fois sur le Syno en ssh pour traiter mes documents plus vite et je tombe sur ce problème d'accent.

Faire en sorte d'avoir le même encodage? ok mais comment?

Lien vers le commentaire
Partager sur d’autres sites

Pas encore. Il faudrait que je configure le NAS pour accepter le NFS et que je configure le partage sur le HTPC (seul PC linux chez moi)...

Mais ça ne va pas être la même chose qu'avec samba pour la vitesse d’accès aux fichiers? La raison pour laquelle je me connecte à la console sur le Syno, c'est pour avoir des temps de travail le plus court possible et un "find" en local et en partagé...

DS414> time find /volume1/Voyage/ -type f -name *.cvs >/dev/null
real    0m 4.75s
user    0m 0.10s
sys     0m 1.21s

Levi59@Windows-PC //DS414/Voyage
$ time find . -type f -name *.cvs >/dev/null


real    2m28.744s
user    0m0.187s
sys     0m6.691s

Et encore, j'en ai eu marre d'attendre et j'ai arrêté le second bien avant la fin...

Lien vers le commentaire
Partager sur d’autres sites

Vous vous prenez vachement le chou ....

Bon suffit de mettre les 2 en encodage UTF8 normalement le nas l'ai déjà mais cygwin(franchement pour cet usage Putty c'est beaucoup mieux) il faut que tu le changes....

faut que tu regardes sur le net comment faire probablement que tu devra jouer avec locale et générée un autre set de characteres .... Pour rappel cygwin sert surtout à faire tourner des appli Linux sous Windows le supports du ssh est anecdotique

Lien vers le commentaire
Partager sur d’autres sites

Mais ça ne va pas être la même chose qu'avec samba pour la vitesse d’accès aux fichiers? La raison pour laquelle je me connecte à la console sur le Syno, c'est pour avoir des temps de travail le plus court possible et un "find" en local et en partagé...

Le NFS est bien plus rapide que le CIFS.

Pour ton test, il n'est pas juste car tu ajoutes la couche cygwin qui n'est pas des plus rapide

En passant, il serait peut être plus efficace d'utiliser directement une machine linux (même en VM).

 

Pour en revenir au problème initial, il peut être opportun de régler des locales (comme l'indique @Sp@r0) du cygwin pour avoir les mêmes que sur le syno :

LANG=en_US.utf8
LC_CTYPE="en_US.utf8"
LC_NUMERIC="en_US.utf8"
LC_TIME="en_US.utf8"
LC_COLLATE="en_US.utf8"
LC_MONETARY="en_US.utf8"
LC_MESSAGES="en_US.utf8"
LC_PAPER="en_US.utf8"
LC_NAME="en_US.utf8"
LC_ADDRESS="en_US.utf8"
LC_TELEPHONE="en_US.utf8"
LC_MEASUREMENT="en_US.utf8"
LC_IDENTIFICATION="en_US.utf8"
LC_ALL=en_US.utf8

Peux tu nous envoyer ton fichier (ou un faux mais avec les mêmes problèmes d'accent) ?

Lien vers le commentaire
Partager sur d’autres sites

J'ai l'impression que c'est plus profont que ce que je pensais... En voulant copier une version épuré d'un fichier, j'ai retesté le sed et les accents et j'ai eu des résultats aléatoire. Parfois, les accents sont affiché normalement et parfois non. Certaines fois, je tape la commande et au moment de valider un caractère bizarre apparait dans la ligne et rend la fonction caduc :

DS414> cat test.csv
Ce matelas offre un confort point par point (7 zones de confort ! ) , c'est-à-dire que les ressorts ensaches réagissent uniquement à la pression qu'on y exerce. Il épouse ainsi parfaitement les courbes de votre morphologie (nuque, épaules, courbure naturelle du dos et bassin).
Ce matelas est extra-ferme permettra donc un très bon maintien du dos.
Le matelas est idéal pour les couples ayant une grande différence de poids/corpulence.DS414>
DS414sed -i ▒'s/à/000/g' test.csv                      # en appuyant sur tab pour l'autocompletion, le "▒" est apparu
sed: unsupported command ▒
DS414> sed -i 's/à/000/g' test.csv                       # j'arrive à lancer la commande
DS414> cat test.csv
Ce matelas offre un confort point par point (7 zones de confort ! ) , c'est-000-dire que les ressorts ensaches réagissent uniquement 000 la pression qu'on y exerce. Il épouse ainsi parfaitement les courbes de votre morphologie (nuque, épaules, courbure naturelle du dos et bassin).
Ce matelas est extra-ferme permettra donc un très bon maintien du dos.
DS414> sed -i 's/000/▒▒/g' test.csv                # là je tape un "à" mais c'est "▒" qui apparait. Pourtant avant ça marchait.
DS414> cat test.csv
Ce matelas offre un confort point par point (7 zones de confort ! ) , c'est-000-dire que les ressorts ensaches réagissent uniquement 000 la pression qu'on y exerce. Il épouse ainsi parfaitement les courbes de votre morphologie (nuque, épaules, courbure naturelle du dos et bassin).
Ce matelas est extra-ferme permettra donc un très bon maintien du dos.
DS414> ▒sed -i 's/000/à/g' test.csv                 # là je peux à nouveau taper le "à" mais le "▒" réapparait tout seul à nouveau en début de ligne.
-ash: ▒sed: not found
DS414> sed -i 's/à/000/g' test.csv                    # j'arrive à nouveau à lancer la commande après avoir manuellement corrigé le fichier.
DS414> sed -i 's/000/à/g' test.csv
DS414> cat test.csv
Ce matelas offre un confort point par point (7 zones de confort ! ) , c'est-à-dire que les ressorts ensaches réagissent uniquement à la pression qu'on y exerce. Il épouse ainsi parfaitement les courbes de votre morphologie (nuque, épaules, courbure naturelle du dos et bassin).
Ce matelas est extra-ferme permettra donc un très bon maintien du dos.
Le matelas est idéal pour les couples ayant une grande différence de poids/corpulence.DS414>
DS414>

Je dois encore faire le test depuis mon HTPC mais il me faut retrouver un clavier usb...

Lien vers le commentaire
Partager sur d’autres sites

C'est un peu pour ça que je voulais le fichier.

Certains caractères, mixés avec un pb d'encodage peuvent "exploser" les shell.

Tu tapes les commandes directement en ssh sur le syno, ou en passant par cygwin ?

Essayes tout de même de nous envoyer un fichier d'exemple.

Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.