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

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  besoin d'aide pour les commandes shell

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

besoin d'aide pour les commandes shell

n°1367839
janus7
Posté le 05-11-2014 à 17:08:23  profilanswer
 

Bonjour,  
 
J'ai un devoir sur la ligne de commande Linux bientôt et je faisais celui de l'année d'avant pour essayer de comprendre un peu mieux. Mais je suis confronté à pas mal de choses que je ne saisis pas.
 
 
Je vous fournis une photo de l'exo 1:
 
http://img11.hostingpics.
 
 
je ne trouve pas:
 
-la 4, on dirait une conditionnelle d'algorithmique mais sous cette forme (surtout "[-f lune]" ) je comprend rien, j'imagine que fi signifie fin.
 
-la 9, je comprend pas le sens de l'apostrophe inclinée vers la droite.
 
-la 13, ici j'ai l'impression de voir une boucle "pour" mais je comprend pas la syntaxe, "for m in" par exemple.
 
Ah aussi, je pense comprendre la 3 (on affiche le nb de mots dans le répertoire) mais je comprend pas pourquoi wc-w est pas juste après ls mais après cette barre, alors que c'était pas le cas dans la 1 et la 2.
 
 
sinon y a aussi ces questions
 
http://img11.
 
Dans l'ex2 on a reçu les réponses et je me demande juste un truc sur la dernière question:
la réponse est "Chmod a-w ddd", mais puisqu'on restreint les droits sur le dossier je me demande juste si c'est vraiment possible de la faire directement sur les fichiers.
 
Dans l'ex3 je comprend pas la seconde question.
 
 
 
J'espère ne pas demander trop, c'est assez important donc je serais vraiment reconnaissant à qui pourra m'aider au moins sur quelques trucs :[
 
Merci d'avance.


Message édité par janus7 le 07-11-2014 à 14:40:38
mood
Publicité
Posté le 05-11-2014 à 17:08:23  profilanswer
 

n°1367852
goblin_rie​ur
ingé systemes unix
Posté le 05-11-2014 à 19:24:19  profilanswer
 


 
-la 4,  [-f lune] ---> man test tu auras la liste des conditionnement possible ... le faire a la ligne ou en indentation ne change que l affichage de la commande elle meme . et oui le fi est la fin du if
toute boucle, conditionnement, regexp etc doit tjrs etre bornee quel que soit le langage  
 
-la 9, je comprend pas le sens de l'apostrophe inclinée vers la droite.
  `commande` et l'antique facon de faire un $(commande)
 
-la 13, ici j'ai l'impression de voir une boucle "pour" mais je comprend pas la syntaxe, "for m in" par exemple.
 
pour tout element de .... faire  ,,,,,,, fin est une boucle a iteration sur le contenu d une liste .  cette methode existe dans presque tous les langages
 
 
 
Ah aussi, je pense comprendre la 3 (on affiche le nb de mots dans le répertoire) mais je comprend pas pourquoi wc-w est pas juste après ls mais après cette barre, alors que c'était pas le cas dans la 1 et la 2.  
 
le '|' est un tube  pipe donc... autrement dit la deuxieme commande interprete non pas la premiere mais son resultat
 
---------------
 
Dans l'ex2 on a reçu les réponses et je me demande juste un truc sur la dernière question:
la réponse est "Chmod a-w ddd", mais puisqu'on restreint les droits sur le dossier je me demande juste si c'est vraiment possible de la faire directement sur les fichiers.
 
c' est pas le meme besoin ducuop mais TOUT est fichier sur un unix y compris un repertoire la memoire, un materiel etc... etc...  
 
Dans l'ex3 je comprend pas la seconde question.
comme tjrs tu as la question dans la reponse et inversement ... regarde la premiere fiche  
 
 
il n y a que le texte affiche a changer....et le fait d utiliser une variable
 
-----------------------------
 
vu tes demandes tu as deja du retard sur ta formation....
je te conseil de vite booter un live-usb ou live-cd pour pratiquer....
 


---------------
Collectionner les vieux serveurs c'est chouette mais c'est lourd et ça prend de la place ;)
n°1367859
janus7
Posté le 05-11-2014 à 20:52:44  profilanswer
 

Merci beaucoup de ta réponse.
Attention par contre c'est que du truc du L1 et sur une petite matière, je comprend que ça puisse sembler très simple si on s'y connait mais autrement c'est clairement moins évident.
 

Citation :

-la 4,  [-f lune] ---> man test tu auras la liste des conditionnement possible ... le faire a la ligne ou en indentation ne change que l affichage de la commande elle meme


C'est surtout sur la signification même de ce que désigne -f lune que je me posais des questions, je ne comprend toujours pas. Y aura pas une liste de la syntaxe qu'on met entre crochet dans les boucles if en ligne de commande linux? Ca a rien à voir avec l'utilisation en algo (basique et java) je trouve.
edit: ah merde c'était surement ce que tu entendais par les conditionnements possibles.
 

Citation :

`commande` et l'antique facon de faire un $(commande)


D'accord.  
Mais y a pas de variable ls du coup un echo 'ls' dans le repertoire tttt affiche rien ou la liste du répertoire?
 

Citation :

pour tout element de .... faire  ,,,,,,, fin est une boucle a iteration sur le contenu d une liste .  cette methode existe dans presque tous les langages


Pour ça aussi je trouvais ça assez différent d'en algo du coup je restais un peu perdu. Est-ce que du coup ce qui est présenté sur la feuille signifie que pour toute lettre m dans les noms des fichiers donnés (ou leur contenu?), on applique la boucle (selon le nb de fois où on rencontre cette lettre donc)? Et après on affiche juste la valeur de la variable, 0 du coup j'imagine.
 

Citation :

c' est pas le meme besoin ducuop mais TOUT est fichier sur un unix y compris un repertoire la memoire, un materiel etc... etc...


Du coup si je fais Chmod a-w ddd/fff ; Chmod a-w ddd/fff2 c'est plus long/bête/inutile mais ça marche non?

Message cité 1 fois
Message édité par janus7 le 07-11-2014 à 14:40:11
n°1367871
Misssardon​ik
prévisible a posteriori
Posté le 05-11-2014 à 22:08:38  profilanswer
 

janus7 a écrit :

Merci beaucoup de ta réponse.
Attention par contre c'est que du truc du L1 et sur une petite matière, je comprend que ça puisse sembler très simple si on s'y connait mais autrement c'est clairement moins évident.
(les infos sur le profil de ce vieux compte créé pour poster une seule fois y a longtemps étaient mises au pif, faut pas s'y fier d'ailleurs j'ai corrigé)
 

Citation :

-la 4,  [-f lune] ---> man test tu auras la liste des conditionnement possible ... le faire a la ligne ou en indentation ne change que l affichage de la commande elle meme


C'est surtout sur la signification même de ce que désigne -f lune que je me posais des questions, je ne comprend toujours pas. Y aura pas une liste de la syntaxe qu'on met entre crochet dans les boucles if en ligne de commande linux? Ca a rien à voir avec l'utilisation en algo (basique et java) je trouve.
edit: ah merde c'était surement ce que tu entendais par les conditionnements possibles.


 
man conditions :

Citation :

      -f FICHIER
              FICHIER existe et est un fichier ordinaire


 
 

janus7 a écrit :


Citation :

`commande` et l'antique facon de faire un $(commande)


D'accord.  
Mais y a pas de variable ls du coup un echo 'ls' dans le repertoire tttt affiche rien ou la liste du répertoire?


 
le fait de mettre la commande entre ce type de guillemets va d'abord éxécuter et substituer les guillemets et ce qu'ils contiennent par le résultat. donc echo `ls` si tu as les fichiers toto et tutu dans le répertoire courant deviendra echo toto tutu ce qui à l'issue de l'éxécution finale affichera les fichiers du répertoire courant ; ça revient un peu à faire un ls directement [:wade:3], l'exemple de ton exercice n'est vraiment pas une bonne illustration de l'usage de ces guillemets, après c'est peut-être fait exprès.  
en anglais ces guillemets s'appellent "backticks", si tu veux faire une recherche google pour en trouver le fonctionnement exact.
 

janus7 a écrit :


Citation :

pour tout element de .... faire  ,,,,,,, fin est une boucle a iteration sur le contenu d une liste .  cette methode existe dans presque tous les langages


Pour ça aussi je trouvais ça assez différent d'en algo du coup je restais un peu perdu. Est-ce que du coup ce qui est présenté sur la feuille signifie que pour toute lettre m dans les noms des fichiers donnés (ou leur contenu?), on applique la boucle (selon le nb de fois où on rencontre cette lettre donc)? Et après on affiche juste la valeur de la variable, 0 du coup j'imagine.


 
non pas du tout, en fait on lance la boucle une fois pour chaque élément de l'ensemble donné (donc en l'occurrence 5 fois), et à l'intérieur de la boucle on aura à disposition une variable $m qui vaudra 'fleur' lors de la première itération, puis 'herbe' à la deuxième, et ainsi de suite. Mais dans l'exemple donné on ne se sert jamais de la variable $m donc encore une fois c'est une mauvaise illustration du fonctionnement du truc.  
C'est beaucoup plus clair comme expliqué ici : http://fr.wikibooks.org/wiki/Progr [...] sh/Boucles

n°1367875
janus7
Posté le 05-11-2014 à 23:38:17  profilanswer
 

Ok, ça m'a bien éclairé, je pense que je comprend mieux maintenant.
 
Merci de votre aide.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  besoin d'aide pour les commandes shell

 

Sujets relatifs
[SOLARIS 11] Aide pour export NFSaide utiliser port infrarouge comme telecommande
[FAILLE] "Shell shock"[Bash - Shell] Script qui se lance tant que la condition est pas valid
[RESOLU] Impossible de démarrer windows depuis l'install de Ubuntu :([ Shell ] Transformation liste en tableau avec ..awk ?
Serveur : Envoyer des commandes "screen" via une page web (php ?)Aide a la creation d'un serveur pour une PME
Aide pour créer un serveur LINUX Minecraft PE 
Plus de sujets relatifs à : besoin d'aide pour les commandes shell


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