Resolu - Caracteres permis dans noms de fichier sous Linux

Répondre
Lindbergh
Messages : 77
Inscription : 30 juin 2006, 21:09
Localisation : Montréal

Resolu - Caracteres permis dans noms de fichier sous Linux

Message par Lindbergh » 25 juil. 2007, 01:41

Bonjour,

Je tente actuellement d'enlever tous les espacements de mes noms de fichiers au moyen d'un script bash mais j'ai des problemes justement a cause de ces espacements. J'avais deja lu quelque part que l'on pouvait avoir des problemes sous Linux avec les espacements dans les noms de fichiers. Maintenant, j'en sais quelque chose.

Mais avant d'adopter un format final pour le nom des fichiers, je voudrais savoir si l'inclusion d'autres symboles pourrait poser des problemes similaires a ceux creer par le caractere espacement. Lorsque je parle d'eventuels problemes, je fais uniquement allusion a l'ecriture de fichiers script bash. Idealement, les noms de fichiers ne devraient inclure que les caracteres alphanumeriques et l'underscore ("_"). Mais il est commode parfois d'inclure d'autres signes.

Donc, est-ce qu'on peut avoir des problemes en mettant les symboles suivants dans les noms de fichier?

a) trait d'union : -
b) parentheses : ( )
c) parentheses carres : [ ]
d) apostrophe : '
e) voyelles avec des accents

Merci, :wink:
Dernière modification par Lindbergh le 13 oct. 2007, 12:21, modifié 1 fois.
ASUS P5GDC Deluxe, carte graphique MSI NX6600LE, mémoire 1024 Mo, disque dur WD 500 Go, moniteur VIEWSONIC UltraBrite 19'' A91f+, lecteur optique NEC CD-R, Windows XP Pro

philefou
Messages : 36
Inscription : 09 mars 2007, 23:51
Localisation : Montréal

Message par philefou » 10 sept. 2007, 14:55

Bonjour,

Je viens de vérifier le tout et il n'y a pas de problème à ajouter ces caractères spéciaux dans les noms de fichiers.

Cependant (là où est surement votre problème): vous devez écrire un \ avant les caractères ( , ) et ' .

Donc par exemple un fichier dont le nom est foo.bar et devrait être foo().bar :

mv foo.bar foo\(\).bar

--------------
ps: Pour renommer un fichier avec des [ ] dans le nom de fichier, tu dois aussi utiliser le \.
J'espère que ça pourra vous aider.

Lindbergh
Messages : 77
Inscription : 30 juin 2006, 21:09
Localisation : Montréal

Message par Lindbergh » 10 sept. 2007, 15:24

Salut philefou,

Oui, j'ai lu ça dernièrement dans un document relatif à la commande sed. En principe, ça ne devrait pas poser de problèmes.

Mais avant d'adopter cette convention, je vais faire des tests dans quelques semaines avec les commandes sed et awk pour savoir si je peux modifier, avec des scripts shell, les noms de fichiers qui comportent ces caractères spéciaux.

Merci de ta réponse, :wink:
ASUS P5GDC Deluxe, carte graphique MSI NX6600LE, mémoire 1024 Mo, disque dur WD 500 Go, moniteur VIEWSONIC UltraBrite 19'' A91f+, lecteur optique NEC CD-R, Windows XP Pro

philefou
Messages : 36
Inscription : 09 mars 2007, 23:51
Localisation : Montréal

Message par philefou » 11 sept. 2007, 11:10

Quel genre de script que tu veux faire?

Lindbergh
Messages : 77
Inscription : 30 juin 2006, 21:09
Localisation : Montréal

Message par Lindbergh » 13 sept. 2007, 13:22

Bonjour,

Le but de mes scripts serait d'interroger des bases de donnees qui seraient constituees par des noms de fichiers dans des repertoires. Prenons un repertoire constitue uniquement d'images.

Par exemple, je peux prendre le fichier ngc_4414.jpg (qui represente une galaxie) et le renommer ngc_4414[726x599](1998).jpg
ou j'ai ajouter certaines proprietes du fichier : la resolution entre les parentheses carrees [ ] et l'annee entre les parentheses ordinaires ( ).

De cette facon, je peux interroger mon repertoire d'images avec un simple script shell en demandant d'extraire les caracteres entre les symboles en question et extraire les photos prises avant 1990 par exemple, ceux qui ont une resolution superieure a 800X624, etc..

Mon repertoire devient en quelque sorte une petite base de donnees.

Je veux faire de meme avec la musique, video, documents, etc en ajoutant d'autres proprietes en utilisant d'autres caracteres tels le trait d'union - , le trait souligne _ etc...

C'est pour cette raison que je voulais savoir absolument quels caracteres autres que les caracteres alphanumeriques on peut mettre dans un nom de fichier sous Linux.


Merci de ta contribution philefou, :wink:
ASUS P5GDC Deluxe, carte graphique MSI NX6600LE, mémoire 1024 Mo, disque dur WD 500 Go, moniteur VIEWSONIC UltraBrite 19'' A91f+, lecteur optique NEC CD-R, Windows XP Pro

Lindbergh
Messages : 77
Inscription : 30 juin 2006, 21:09
Localisation : Montréal

Message par Lindbergh » 11 oct. 2007, 23:49

Bonsoir,

Je ne sais pas si certains metacaracteres presents dans les noms de fichiers peuvent poser des problemes dans certains scripts mais chose certaine, apres verification, on peut aisement les supprimer des noms de fichiers. C'est ce qui compte finalement.

Salutations, :wink:
ASUS P5GDC Deluxe, carte graphique MSI NX6600LE, mémoire 1024 Mo, disque dur WD 500 Go, moniteur VIEWSONIC UltraBrite 19'' A91f+, lecteur optique NEC CD-R, Windows XP Pro

Répondre