Help exercice script shell

Fermé
marinette0805 - 14 déc. 2015 à 18:16
dna.factory Messages postés 24938 Date d'inscription mercredi 18 avril 2007 Statut Modérateur Dernière intervention 18 avril 2024 - 16 déc. 2015 à 07:34
Bonjour,

J'ai un exercice de script shell à faire mais je n'y arrive pas. Pouvez-vous me donner des pistes pour que je puisse le commencer s'il vous plait
Merci

Voici le sujet:

Rédiger un script shell référencé images qui admet en argument un nombre quelconque de
répertoires et qui affiche l'espace disque total occupé, dans chaque répertoire, par les
fichiers de type image au format « point jpg ».
L'espace disque total, occupé par toutes les images de tous les répertoires traités, est
également affiché (dans l'exemple ci-dessus, 41 020 + 1 008 = 42 028).
Exemple :


$ ./images $HOME/Images/Noel_2009 pluf $HOME/Images/Saint_Maulvis /root
/home/raoul/Images/Noel_2009 contient 41020 ko d'images jpg pluf : inexistant ou non répertoire /home/raoul/Images/Saint_Maulvis/ contient 1008 ko d'images jpg
/root : lecture non autorisée
-- Total : 42028 ko
$

On n'oubliera d'opérer toutes les vérifications adéquates et de programmer selon l'esprit
Unix.
Le format d'affichage de l'exemple cidessus devra être respecté.
Indication.
L'utilisation de la commande du peut s'avérer utile. Consulter le manuel. En effet, traiter des
tailles de fichiers avec la commande ls est compliqué car les champs affichés par cette
commande ne sont pas séparés par un espace, mais plusieurs, d'où des difficultés à les
isoler avec le filtre cut.

voici ce que j'ai fais, j'ai vraiment de grosse difficulté donc j'aimerai de l'aide pour que je puisse finir mon exercice

#!/bin/bash

If (( $# ))
Then echo "$rep n'existe pas"
Fi
Exit 1


For $rep in $(du $1/*.jpg)
Do
If
Then echo "$rep contient ... ko d'images jpg"
Else écho " $rep: lecture non autorisé "
Fi
Donne
Exit 0
A voir également:

1 réponse

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
14 déc. 2015 à 18:18
Salut,

Tout t'a été dit ;-\
0
Marinette0805
14 déc. 2015 à 19:39
C'est à dire ?
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407 > Marinette0805
14 déc. 2015 à 19:51
Qu'on ne te dira rien de plus que ce qui t'a été dit sur developpez ;-\

Qu'est-ce qui ne t'a pas plu là-bas ?
Qu'espères-tu de nous ?
0
Marinette0805
14 déc. 2015 à 20:23
Ben vous ne m'aidez pas vraiment, j'aimerai avoir une piste , me dire quelle sont les étapes à faire
0
dna.factory Messages postés 24938 Date d'inscription mercredi 18 avril 2007 Statut Modérateur Dernière intervention 18 avril 2024 1 609
16 déc. 2015 à 07:34
Mais nous écouteras tu davantage que les intervenants de Développez, qui t'ont donné de nombreuses pistes ?
Et qui ont eu pour résultat que tu ailles demander ailleurs ?

un script shell, c'est juste une série d'instruction, regroupées dans un fichier, la première étape, que t'ont donné les gens de développer est donc de taper les instructions une par une, directement en ligne de commande et de voir ce que ça donne.
(en l'occurence, le du).

Ben vous ne m'aidez pas vraiment
Tout est question de point de vue, ce n'est pas t'aider que faire ton exercice à ta place (ce qui semble être ton objectif, ne nous leurrons pas).

Et un dernier point, en scripting, l'orthographe est critique, une seule faute (donne au lieu de done) et le programme ne fonctionnera plus.
De même en linux, les majuscules sont traités différemment des minuscules, on ne mets donc pas de majuscule en début de phrase.
En fait, même un espace en trop peut tout casser.
En général, les gens qui demandent (ou donnent) de l'aide pour des scripts font des copier/coller de leur script (en utilisant les balises code) pour s'assurer que leur problème ne vienne pas de la syntaxe.
0