Pages : 1
#1 Le 03/09/2006, à 15:58
- mounet
Ecriture d'un petit script shell
bonjour à toute la communauté:P
j'ai un script a faire mais je ne connai pas vraiment linux....
le voilà:
Lors du chargement des photos numériques, d’un appareil photo à un ordinateur, les fichiers sont stockés dans un
répertoire, leur nom est de la forme xxxx_1234 (xxxx représente une chaîne de caractère ne contenant que des lettres
et 1234 représente une chaîne de caractère ne contenant que des chiffres) et leur extension est jpg, jpeg ou tiff.
Vous allez créer le script photo ayant les fonctionnalités suivantes :
- tous les fichiers photo d’un répertoire donné seront renommé de xxxx_1234 à photo_1234
- seuls les fichiers jpg, jpeg et tiff seront renommés
- si le fichier destination, du type photo_1234, existe déjà l’utilisateur choisira entre l’écraser et ne pas renommer
Le script photo admet un seul paramètre, le nom du répertoire à traiter. Si le script photo est lancé avec des paramètres
incorrects (répertoire non valide, nombre de paramètre incorrect, ...) il doit afficher :
usage : photo nom_rerpertoire
si quel'qu'un pouvai m'indiquer des éléments de réponse ou plus si possible...je l'en remercie d'avance
#2 Le 03/09/2006, à 17:31
- mounet
Re : Ecriture d'un petit script shell
MAJ
etant soucieux de réussir celà par mes propres moyens et de ne pas vous laisser faire tout le travail, j'ai commencé mai je n'arrive vraiment pas à faire les choses suivantes:
- si le fichier destination, du type photo_1234, existe déjà l’utilisateur choisira entre l’écraser et ne pas renommer
Le script photo admet un seul paramètre, le nom du répertoire à traiter. Si le script photo est lancé avec des paramètres
incorrects (répertoire non valide, nombre de paramètre incorrect, ...) il doit afficher :
usage : photo nom_rerpertoire
Voilà ce sont les 2 choses que je n'arrive vraiment pas a faire:(:(:(:(
#3 Le 03/09/2006, à 18:09
- abetsic
Re : Ecriture d'un petit script shell
pour faire des tests sur des variables des fichiers ou autre tu as la commande "test" (man test) qui peut être remplacé par des [ ], [ -f fichier_a_tester ] par exemple... après c'est à insérer dans une structure de controle "if then else"
Pour le deuxième problème, vas voir les scripts qui sont dans /etc/init.d/ (ne cherche pas à les modifier) il y a ce que tu cherches. Sinon, pour connaitre le nombre d'arguments ça doit être la variable $@, si elle ne vaut pas 2 (ou 3 si on considère le nom du script)
Pour renommer en masse tu peux regarder du côté de "rename" dont la syntaxe est qqch comme ça : rename s/xxxx/photo/ * pour renommer tout les fichiers qui contiennent xxxx en photo en laissant le reste du nom du fichier intact.
Hors ligne
#4 Le 03/09/2006, à 19:02
- JoelS
Re : Ecriture d'un petit script shell
MAJ
etant soucieux de réussir celà par mes propres moyens et de ne pas vous laisser faire tout le travail, j'ai commencé mai je n'arrive vraiment pas à faire les choses suivantes:
oui, d'autant plus que ça ressemble à un TP, ça:-)
- si le fichier destination, du type photo_1234, existe déjà l’utilisateur choisira entre l’écraser et ne pas renommer
Regardes du côté des options de la commande qui sert à renommer un fichier: $ man mv, et testes. Pour le renommage en masse, $ man rename, et la aussi testes
Ceci dit, le but du TP est probablement de te faire écrire un rename spécifique, alors ne fais pas trop le malin, ton prof risque de ne pas apprécier :-)
Hors ligne
#5 Le 03/09/2006, à 21:17
- lunique
Re : Ecriture d'un petit script shell
Mon prof de pratique d'Unix de l'année derniere nous engueulait lorsqu'on recrivait en bash une commande qui faisait deja le but du script. Il voulait qu'on arrive a faire au plus direct possible, et il poussait à ce qu'on cherche de partout les infos qui pourraient nous aider.
Hors ligne
#6 Le 04/09/2006, à 08:27
- mounet
Re : Ecriture d'un petit script shell
:DMerci à vous pour toutes ces réponses .. tres satisfaisantes je dois dire:P
#7 Le 04/09/2006, à 20:30
- JoelS
Re : Ecriture d'un petit script shell
Mon prof de pratique d'Unix de l'année derniere nous engueulait lorsqu'on recrivait en bash une commande qui faisait deja le but du script. Il voulait qu'on arrive a faire au plus direct possible, et il poussait à ce qu'on cherche de partout les infos qui pourraient nous aider.
Tout est dit, ou plutôt écrit: pratique d'Unix. Si c'est un cours plus orienté algo (même en shell), moi, je ralerais.
Hors ligne