Aller au contenu

Messages recommandés

  • 1 mois après...
Posté(e)

Bonsoir à tous,

Tout comme vous je rencontre également le problème d'accent avec Sabnzbd. Lors de la décompression, les caractères accentués sont remplacés par des symboles que je peux modifier que sous telnet avec la commande mv nomavecaccent nomsansaccent.

Après avoir parcouru différents forums sans avoir trouvé de solution toute faite, j'ai décidé de me lancer de tenter de créer mon premier script linux pour corriger ce problème.

J'ai donc parcouru des sites sur le web afin d'en apprendre un peu plus sur linux et son shell sh et j'ai écrit le bout de code suivant, et ça fonctionne...

Je tourne sur un DS410 en DSM 3.2 béta. Attention, utilisez ce code à vos risques et périls. Il renomme directement les fichiers comportant des caractères accentués par des caractères sans accent : exemple éèêë deviennent e.

Voici le code :

#!/bin/sh

#=============================================================

#==== Script trapspot ====

#=============================================================

# Septembre 2009 - Soni - sonisun@neuf.fr

#=============================================================

# Première version du script, n'hésitez pas à me faire part de

# vos commentaires et à améliorer ce script...

#=============================================================

# Conçu pour supprimer les caractères accentués des fichiers

# récupérés et décompressés par Sabnzbd sur les NAS Synology

# Testé avec un DS410 - DSM 3.2 Beta

#=============================================================

#=============================================================

# ATTENTION, ceci est ma première réalisation de script linux.

# Je me suis documenté en parcourant divers sites sur internet

# traitant du Shell Linux. A utiliser à vos risques et

# périls;-)

#=============================================================

#=============================================================

REP_SOURCE="*"

ListeRepl="cueaaaaceeeiiiAAEeEooouuyOUOEOXFaiounNaoxo_21i<>xxxIxAAAcxxxxcyxLxTx_xaALxxxxxxooEEEEiIIIxxxxIIxOBOOoOuppUUUyy___x4xexxxxx132xx"

MuTxt() {

MyDir=`dirname "$1"`

MyFile=`basename "$1"`

newname=""

if [ ${#MyFile} -ge 1 ]; then

for i in $(seq 0 ${#MyFile});

do

lettre=`echo ${MyFile:${i}:1}`;

valeurASCII=`printf "%d\n" "'$lettre"`;

if [ $valeurASCII -ge 128 ]; then

depart=$(($valeurASCII - 128));

newname=`echo "$newname${ListeRepl:$depart:1}"`;

else

newname=`echo "$newname${MyFile:${i}:1}"`;

fi

done

#cp "$MyFile" "$newname"

if [ "$MyFile" != "$newname" ]; then

#mv "$MyFile" "$newname"

mv "$MyDir/$MyFile" "$MyDir/$newname"

fi

fi

}

find ${REP_SOURCE} -type f | while read A ; do

MuTxt "$A"

done

find ${REP_SOURCE} -type d | while read A ; do

MuTxt "$A"

done

echo "Traitement terminé..."

exit 0

#=============================================================

#==== Script trapspot ====

#=============================================================

Merci de me faire part de vos commentaires, critiques et améliorations à apporter à ce programme.

Pour info : j'exécute ce code en root, le script trapspot est enregistré dans /opt/bin/ et n'oubliez pas de le rendre exécutable avec un chmod +x trapspot

Bonnes décompressions...

  • 2 semaines après...
Posté(e)

Bon, je pense avoir réussi l'installation et l'exécution, mais le script me renvoit des erreurs :


DiskStation1> sh /opt/bin/trapspot Quelques_ePub/

: not foundapspot: line 21:

: not foundapspot: line 24:

/opt/bin/trapspot: line 30: syntax error: unexpected word (expecting "do")

y'a-t-il quelque chose à corriger dans le script ?

Posté(e)

Bonsoir,

Le mieux est en effet d'utiliser un éditeur du type vi, si le code a été écrit sous Windows, les marques de paragraphe le rendront non compréhensible sous Linux.

Depuis le post ci-dessus, copier le code dans le presse papier. Sous vi (en se plaçant dans /opt/bin, taper vi trapspot), se mettre en insertion en appuyant sur la touche i ou sur la touche Insert, puis cliquer sur le bouton droit de la souris, cela va copier le contenu du presse papier dans vi.

Je pense que cela devrait régler le problème.

Cdlt,

SoniSun

  • 2 semaines après...
  • 1 mois après...
Posté(e)

Ma solution de noob,

Moi je compresse le fichier sur le nass puis je copie le zip sur un DD externe puis je le dézip avec mon mac sur ce meme DD.

C'est long mais je suis une brèle en linux.

  • 2 mois après...
Posté(e) (modifié)

Tiens je ne sait pas si chez vous ça fait pareil mais j'ai voulu utiliser ce script trapspot en post traitement sous Sabnzbd mais ça ne fonctionne pas (il ne remplace pas les char spéciaux au niveau du nom de fichier) par contre si je vais dans le dossier sous putty et que je lance la commande directement dans le dossier ça fonctionne; est-ce qu'il ne descend dans dans le dossier pour faire le traitement ?

Edit:

Mon rep de download est définir sur /volume1/Downloads

Le script traspot pour Sab se trouve dans /var/packages/sab2/target/sab/scripts/

Si je lance la commande trapspot manuellement dans /volume1/Downloads ça va bien dans les sous-rep et renomme tous les fichiers comme il faut; une idée pourquoi sab n'y arrive pas ? peut être je peux forcer dans le script pour avoir un traitement automatique sur /volume1/Downloads donc au lieu de :

REP_SOURCE="*"

Avoir REP_SOURCE="/volume1/Downloads/"

Edit 2 : ça fonctionne bien avec le REP_SOURCE remplacé; c'est certes un peu plus lourd pour le nas mais ce dossier étant temporaire c'est mieux ainsi

Modifié par Psyko
  • 2 mois après...
Posté(e)

Je déterre un peu le topic, mais je cherche des testeurs

Avis aux courageux !! ;)

  • 1 mois après...
Posté(e)

Bonsoir à tous,

Tout comme vous je rencontre également le problème d'accent avec Sabnzbd. Lors de la décompression, les caractères accentués sont remplacés par des symboles que je peux modifier que sous telnet avec la commande mv nomavecaccent nomsansaccent.

Après avoir parcouru différents forums sans avoir trouvé de solution toute faite, j'ai décidé de me lancer de tenter de créer mon premier script linux pour corriger ce problème.

J'ai donc parcouru des sites sur le web afin d'en apprendre un peu plus sur linux et son shell sh et j'ai écrit le bout de code suivant, et ça fonctionne...

Je tourne sur un DS410 en DSM 3.2 béta. Attention, utilisez ce code à vos risques et périls. Il renomme directement les fichiers comportant des caractères accentués par des caractères sans accent : exemple éèêë deviennent e.

Voici le code :

#!/bin/sh

#=============================================================

#==== Script trapspot ====

#=============================================================

# Septembre 2009 - Soni - sonisun@neuf.fr

#=============================================================

# Première version du script, n'hésitez pas à me faire part de

# vos commentaires et à améliorer ce script...

#=============================================================

# Conçu pour supprimer les caractères accentués des fichiers

# récupérés et décompressés par Sabnzbd sur les NAS Synology

# Testé avec un DS410 - DSM 3.2 Beta

#=============================================================

#=============================================================

# ATTENTION, ceci est ma première réalisation de script linux.

# Je me suis documenté en parcourant divers sites sur internet

# traitant du Shell Linux. A utiliser à vos risques et

# périls;-)

#=============================================================

#=============================================================

REP_SOURCE="*"

ListeRepl="cueaaaaceeeiiiAAEeEooouuyOUOEOXFaiounNaoxo_21i<>xxxIxAAAcxxxxcyxLxTx_xaALxxxxxxooEEEEiIIIxxxxIIxOBOOoOuppUUUyy___x4xexxxxx132xx"

MuTxt() {

MyDir=`dirname "$1"`

MyFile=`basename "$1"`

newname=""

if [ ${#MyFile} -ge 1 ]; then

for i in $(seq 0 ${#MyFile});

do

lettre=`echo ${MyFile:${i}:1}`;

valeurASCII=`printf "%dn" "'$lettre"`;

if [ $valeurASCII -ge 128 ]; then

depart=$(($valeurASCII - 128));

newname=`echo "$newname${ListeRepl:$depart:1}"`;

else

newname=`echo "$newname${MyFile:${i}:1}"`;

fi

done

#cp "$MyFile" "$newname"

if [ "$MyFile" != "$newname" ]; then

#mv "$MyFile" "$newname"

mv "$MyDir/$MyFile" "$MyDir/$newname"

fi

fi

}

find ${REP_SOURCE} -type f | while read A ; do

MuTxt "$A"

done

find ${REP_SOURCE} -type d | while read A ; do

MuTxt "$A"

done

echo "Traitement terminé..."

exit 0

#=============================================================

#==== Script trapspot ====

#=============================================================

Merci de me faire part de vos commentaires, critiques et améliorations à apporter à ce programme.

Pour info : j'exécute ce code en root, le script trapspot est enregistré dans /opt/bin/ et n'oubliez pas de le rendre exécutable avec un chmod +x trapspot

Bonnes décompressions...

merci, enfin quelque chose qui fonction :)

pour simplifier

installation en telnet

root

cd /opt/bin

wget http://archos605.free.fr/nas/trapspot

chmod +x trapspot

pour utiliser

cd /votre dossier

trapspot

encore merci

  • 3 mois après...
  • 8 mois après...
Posté(e)

Le pb d'accent n'est pas lié exclusivement à SABNZBD, il faudrait modifier le sujet je pense :)

NZBGet est également concerné, c'est un pb de gestion de caractere propre au Syno.

Posté(e)

Tu viens de répondre à un topic datant de Sep 2012...

;)

Et si tu as ce genre de problème regarde les liens dans ma signature, tu devrais trouver ton bonheur!!

:D

  • 1 mois après...
Posté(e)

Bonjour,

J'ai exactemen le même problème.

J'ai fais une sauvegarde de mes documents de Windows vers mon DS710+

J'ai pas fais attention et la pluspart de mes photos contenais des accents.

Maintenan impossible de les récupérer, je suis obligé de tout renommer pour les récupérer.

Aucune méthode ne fonctionne après moulte essais.

Je trouve ce problème extrêmement grave pour une marque comme synology.

J'ai 20Go de photo à renommer et je ne veux pas me retaper tout à la main.

Je veux que ça fonctionne pour les sauvegardes que l'on effectue sur le NAS et pas seulement pour les téléchargements avec Sab.

Comment est-ce possible !!! Enfin mince c'est du n'importe quoi surtout au prix du matos....

Quelqu'un pour m'aider, je vois que je ne suis pas le seul à avoir ce problème d'accent.

Merci

Posté(e)

Merci Marc-Al grace à toi j'ai trouvé THE SOLUTION

editer le fichier : /usr/syno/etc/smb.conf

et ajouter à la fin de la section [Global]

dos charset = 850
unix charset = ISO8859-15

Vous ne verrez plus de caractère avec accent, ni de caractère remplacé par des "_" ou des tete de mort.... dans windows et votre fichier s'ouvrira normalement :)

Merci bcp pour ta solution, c'est bien samba qui bloc

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.