Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2731 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  HELP!! Pb script!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

HELP!! Pb script!

n°1502742
ded3869
Posté le 13-01-2007 à 16:17:48  profilanswer
 

Bonjour,  
 
Je suis vraiment débutant sous Unix et j'aimerai créer un script Unix mais malheureusement j'y comprends rien :cry:  :cry: . Au secours j'ai besoin d'aide.
 
Il s'agit d'un changement de suffixe pour un ensemble de fichiers et/ou répertoires dans une arborescence unix  
 
Je souhaiterai écrire un script en cshell acceptant quatre paramètres en entrée.  
 
- l'ancien suffixe  
- le nouveau suffixe  
- deux chaînes alphanumériques  
 
Le script cherchera partout dans l'arboresce à partir duquel il est  
lancé, tous les fichiers ou répertoires ayant comme extension l'ancien suffixe, et les renommera en fonction du nouveau suffixe proposé sauf pour les noms fournis en troisième et quatrième arguments.  
 
Le script devra présenter un tableau indiquant en colonnes chaque élément renommé en précisant s'il s'agit d'un fichier ou un répertoire, la taille en octets et la date de dernière modification.  
Le nombre total de fichier renommés, ainsi que Le nombre de cas exclus sont à fournir également.
 
Connaissez-vous un script proche de celui ci qui pourrait m'aider :??: .  
 
Merci d'avance
Ded  
 

mood
Publicité
Posté le 13-01-2007 à 16:17:48  profilanswer
 

n°1502743
mikala
Souviens toi du 5 Novembre...
Posté le 13-01-2007 à 20:16:26  profilanswer
 

c'est pour les cours ? :)


---------------
Intermittent du GNU
n°1502744
thierryR
J'aime les bretzels
Posté le 13-01-2007 à 23:30:15  profilanswer
 

Tu vas trouvé ton bonheur ici:
http://abs.traduc.org/abs-4.1-fr/
 
Sous linux on encourage toujours à ce que chacun apprenne et se documente.
Par contre si tu bloques, on te dépanne.


Message édité par thierryR le 13-01-2007 à 23:31:33

---------------
Penguin online qui ne fait que des conneries, et qui aime ça. Membre du http://www.fonacon.net/
n°1502745
ded3869
Posté le 14-01-2007 à 15:00:26  profilanswer
 

mikala a écrit :

c'est pour les cours ? :)


 
Hé oui, malheureusement ce n'est pas pour mon plaisir :p

n°1502746
mikala
Souviens toi du 5 Novembre...
Posté le 14-01-2007 à 15:01:48  profilanswer
 

donc ce n'est définitivement pas la bonne section.
tu devrais essayer sur programmation. [:cupra]
je transfert ton post .


---------------
Intermittent du GNU
n°1502747
ded3869
Posté le 14-01-2007 à 15:06:57  profilanswer
 

mikala a écrit :

donc ce n'est définitivement pas la bonne section.
tu devrais essayer sur programmation. [:cupra]
je transfert ton post .


 
Merci, désolé je ne savais pas. :wahoo:

n°1502820
Sve@r
Posté le 14-01-2007 à 20:41:07  profilanswer
 

ded3869 a écrit :

Bonjour,  
 
Je suis vraiment débutant sous Unix et j'aimerai créer un script Unix mais malheureusement j'y comprends rien :cry:  :cry: . Au secours j'ai besoin d'aide.
 
Il s'agit d'un changement de suffixe pour un ensemble de fichiers et/ou répertoires dans une arborescence unix  
 
Je souhaiterai écrire un script en cshell acceptant quatre paramètres en entrée.  
 
- l'ancien suffixe  
- le nouveau suffixe  
- deux chaînes alphanumériques  
 
Le script cherchera partout dans l'arboresce à partir duquel il est  
lancé, tous les fichiers ou répertoires ayant comme extension l'ancien suffixe, et les renommera en fonction du nouveau suffixe proposé sauf pour les noms fournis en troisième et quatrième arguments.  
 
Le script devra présenter un tableau indiquant en colonnes chaque élément renommé en précisant s'il s'agit d'un fichier ou un répertoire, la taille en octets et la date de dernière modification.  
Le nombre total de fichier renommés, ainsi que Le nombre de cas exclus sont à fournir également.
 
Connaissez-vous un script proche de celui ci qui pourrait m'aider :??: .  
 
Merci d'avance
Ded


cshell ? t'es certain ??? C'est rare de voir des TP en cshell !!!
 
Je saurais le faire en shell... mais absolument pas en cshell.


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1503325
ded3869
Posté le 15-01-2007 à 19:56:59  profilanswer
 

Sve@r a écrit :

cshell ? t'es certain ??? C'est rare de voir des TP en cshell !!!
 
Je saurais le faire en shell... mais absolument pas en cshell.


 
Ben, c'est stipulé en cshell :??:  :??:

n°1504488
Sve@r
Posté le 18-01-2007 à 09:07:27  profilanswer
 

ded3869 a écrit :

Ben, c'est stipulé en cshell :??:  :??:


Bon ben t'as sûrement un cours pour ça. Je vais essayer de te donner le principe en français tel que je le ferais en shell et faudra que t'adaptes au cshell...
 

ded3869 a écrit :

Je souhaiterai écrire un script en cshell acceptant quatre paramètres en entrée.  
 
- l'ancien suffixe  
- le nouveau suffixe  
- deux chaînes alphanumériques


Bon, pas compliqué, tu récupères les 4 paramètres dans 4 variables
 

ded3869 a écrit :

Le script cherchera partout dans l'arboresce à partir duquel il est  
lancé, tous les fichiers ou répertoires ayant comme extension l'ancien suffixe , et les renommera en fonction du nouveau suffixe proposé sauf pour les noms fournis en troisième et quatrième arguments.


Là, le "find" te sera utile. Il faut que tu fasses une boucle sur chaque nom renvoyé par le find. Tu compares ce nom avec tes arguments 3 et 4 et s'ils ne sont pas identiques, tu crées le nouveau nom en utilisant l'argument 2 puis tu fais un "mv ancien_non nouveau_nom"
Syntaxe du find: find . -name "*.extension" -print (les guillemets après "name" sont obligatoires)
 

ded3869 a écrit :

Le script devra présenter un tableau indiquant en colonnes chaque élément renommé en précisant s'il s'agit d'un fichier ou un répertoire, la taille en octets et la date de dernière modification.


Pour récupérer les infos demandées, tu peux faire un "ls -ld nom" ou "stat nom". Les 2 commandes te renvoient des infos sur le nom que tu peux filtrer avec "grep" et/ou "cut". Tu peux afficher les infos que tu récupères immédiatement après les avoir récupérées (donc dans la boucle) sans t'embêter à les stocker pour les afficher à la fin du script car c'est pas demandé
 

ded3869 a écrit :

Le nombre total de fichier renommés, ainsi que Le nombre de cas exclus sont à fournir également.


Deux petits compteurs en plus...
 

ded3869 a écrit :

Connaissez-vous un script proche de celui ci qui pourrait m'aider :??: .


Même si on avait ce genre de truc en stock, tu perdrais plus de temps à le modifier qu'à tout faire de zéro. Avec des exemples simples cshell sur chaque type d'opération que t'as à faire (récupérer et traiter un résultat de commande ligne par ligne, découper une chaîne, en créer une autre, etc) tu peux t'en sortir. Surtout que normallement on t'envoie pas au charbon sans billes pour t'en sortir...

Message cité 1 fois
Message édité par Sve@r le 21-01-2007 à 21:52:40

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°1505320
ded3869
Posté le 20-01-2007 à 13:47:45  profilanswer
 

Sve@r a écrit :

Bon ben t'as sûrement un cours pour ça. Je vais essayer de te donner le principe en français tel que je le ferais en shell et faudra que t'adaptes au cshell...
 
 
Bon, pas compliqué, tu récupères les 4 paramètres dans 4 variables
 
 
Là, le "find" te sera utile. Il faut que tu fasses une boucle sur chaque nom renvoyé par le find. Tu compares ce nom avec tes arguments 3 et 4 et s'ils ne sont pas identiques, tu crées le nouveau nom en utilisant l'argument 2 puis tu fais un "mv ancien_non nouveau_nom"
Syntaxe du find: find . -name "*.extension" -print (les guillemets après "name" sont obligatoires)
 
 
Pour récupérer les infos demandées, tu peux faire un "ls -ld nom" ou "stat nom". Les 2 commandes te renvoient des infos sur le nom que tu peux filtrer avec "grep" et/ou "cut". Tu peux afficher les infos que tu récupères immédiatement après les avoir récupérées (donc dans la boucle) sans t'embêter à les stocker pour les afficher à la fin du script car c'est pas demandé
 
 
 
 
Même si on avait ce genre de truc en stock, tu perdrais plus de temps à le modifier qu'à tout faire de zéro. Avec des exemples simples cshell sur chaque type d'opération que t'as à faire (récupérer et traiter un résultat de commande ligne par ligne, découper une chaîne, en créer une autre, etc) tu peux t'en sortir. Surtout que normallement on t'envoie pas au charbon sans billes pour t'en sortir...


 
 
 
Merci pour tout :sol:  


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  HELP!! Pb script!

 

Sujets relatifs
simplejava , help:)faire un script
HELP! bases sur module beckFonction FILE, file_get_contents qui marche pas toujours. Help!
Script chat internet[VBS] Script ds un contexte admin
[Help] Les caractères avec accent s'affiche en ? sur mon blog :([Résolu] Exécuter une action en fonction du choix dans un menu
Script pour attribuer un "identifiant" à des vidéosPhpMyAdmin, script gratuit
Plus de sujets relatifs à : HELP!! Pb script!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR