Lignes de commande

Lignes de commande - Shell/Batch - Programmation

Marsh Posté le 27-09-2007 à 12:55:06    

Bonjour a tous je suis étudiant en premiere année de DUT Informatique. J'ai un petit compte rendu de tp a faire mais ej coince aux 4 dernieres questions :
 
- donner la ligne de commande qui affiche les variables de votre environnement dont le nom commance par "BASH" ; (indication : utiliser les ocmmande grep, wc, set, who).
- donner la ligne de commande permettant d'afficher les lignes 10 a 15 d'un fichier texte. (utiliser les commande head et tail)
- donner la ligne de commande qui affiche a l'écran le contenu de la variable PATH ou le ":" a été transformé en " " (espace)
- donner la ligne de commande qui affiche la taille de la plus longue ligne de votre environnement.
 
Voila si vous pouvez m'aider a répondre a ceci.  
 
Merci a vous

Reply

Marsh Posté le 27-09-2007 à 12:55:06   

Reply

Marsh Posté le 27-09-2007 à 15:22:20    

1- set | grep "BASH"
2- more fichier.txt | head -15 | tail -5
 
Pour le reste, et d'une c'est trivial, et de deux on te donne même les commandes à utiliser, c'est saoulant que tu cherches pas par toi même, et de trois c'est interdit de quémander ses devoirs sur ce forum.

Reply

Marsh Posté le 27-09-2007 à 16:08:40    

Petites rectifications :
1) set | grep "^BASH"
2) head -15 fichier | tail -6
    head -15 fichier | tail +10
 
3) voir sed ou tr
4) voir awk

Reply

Marsh Posté le 27-09-2007 à 18:10:06    

durkheim a écrit :

1- set | grep "BASH"
2- more fichier.txt | head -15 | tail -5
 
Pour le reste, et d'une c'est trivial, et de deux on te donne même les commandes à utiliser, c'est saoulant que tu cherches pas par toi même, et de trois c'est interdit de quémander ses devoirs sur ce forum.


 
Je suis désolé, ca ne fait qu'une semaine que j'ai commencé, et je n'ai jamais touché a un pc avant ormi aller sur internet ! (pas de programmations ... meme pas d'Unix ) Et pour ce qui est de "cherches par toi meme" pensez vous que j'aurais posté sur ce forum sans chercher ? Sur 20 question seul 4 m'ont posé probleme ! Donc si ça pose probleme je suis désolé je pensais juste que c'était un forum d'aide a la programmation !
Sinon merci quand même !

Reply

Marsh Posté le 27-09-2007 à 18:54:12    

fungio76 a écrit :

Bonjour a tous je suis étudiant en premiere année de DUT Informatique. J'ai un petit compte rendu de tp a faire mais ej coince aux 4 dernieres questions :
 
- donner la ligne de commande qui affiche les variables de votre environnement dont le nom commance par "BASH" ; (indication : utiliser les ocmmande grep, wc, set, who).
- donner la ligne de commande permettant d'afficher les lignes 10 a 15 d'un fichier texte. (utiliser les commande head et tail)
- donner la ligne de commande qui affiche a l'écran le contenu de la variable PATH ou le ":" a été transformé en " " (espace)
- donner la ligne de commande qui affiche la taille de la plus longue ligne de votre environnement.
 
Voila si vous pouvez m'aider a répondre a ceci.  
 
Merci a vous


 
1 et 2 ça a été posté
 
Pour le 3, je te recommande de regarder de plus près la commande "sed". Si on te l'a pas donné, alors on t'a peut-être donné "tr" à la place. De toute façon il faut l'une ou l'autre
 
Pour le 4, je vois pas comment le faire en une ligne. Là moi j'introduirais une boucle de lecture de l'env avec un wc sur chaque ligne de la boucle terminé par un sort -n pour avoir le résultat trié sur la taille de chaque ligne fini par un tail pour avoir que le dernier résultat (la taille de la plus longue ligne) mais évidemment ça ne se fait pas en une ligne de commande (ou alors une super grosse ligne qui, il me semble, dépasse le niveau d'un début de DUT). Ou alors je passe à coté d'un truc bateau...
 
Sinon comme tu le dis, c'est un forum pour aider les personnes à comprendre comment résoudre leur problème, pas à le faire à leur place. Je pourrais très bien te donner les commandes 3 et 4 brut de pomme mais 1) cela ne t'aiderait pas (pour l'examen final tu seras seul) et 2) c'est contraire à la charte du fofo...
 


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 27-09-2007 à 20:43:50    

Sve@r: Pour le 4, il suffit pas de ça?
 
set | sort -n | tail -1

Reply

Marsh Posté le 27-09-2007 à 21:31:44    

durkheim a écrit :

Sve@r: Pour le 4, il suffit pas de ça?
 
set | sort -n


Ben non. Tu tries le résultat du "set" donc tu tries un listing de chaînes. D'après ce que j'ai compris, il faut trouver la chaîne la plus longue donc ça passe par un comptage du nb de caractères que tu dois appliquer pour chaque chaînes...


Message édité par Sve@r le 27-09-2007 à 21:32:34

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 27-09-2007 à 22:09:23    

En tout cas si tu n'apprends pas à chercher le fonctionnement par toi-même, tu risques de ne pas tout comprendre à cette étape, et après ça sera bien plus difficile sans les bases ou les bons automatismes de recherche.

Reply

Marsh Posté le 28-09-2007 à 02:04:02    

Je viens de découvrir l'option -L de wc avec ce post (est-ce standard ?) :)

Code :
  1. -L, --max-line-length
  2.               print the length of the longest line


 
Pour le 3 avec bash tu peux faire ça directement mais ce n'est pas supporté par tous les shell et je doute que ce soit le résultat attendu :

Code :
  1. echo ${PATH//:/ }


Message cité 1 fois
Message édité par arsunik le 28-09-2007 à 02:10:16

---------------
[:arsunik]  Les tournois de badminton
Reply

Marsh Posté le 28-09-2007 à 18:28:37    

arsunik a écrit :

Je viens de découvrir l'option -L de wc avec ce post (est-ce standard ?) :)

Code :
  1. -L, --max-line-length
  2.               print the length of the longest line



Intéressant. Je ne connaissais pas cette option de wc mais on doit pas la trouver sur tous les Unix. Evidemment ça aide pour le 4...
set |wc -L
 

arsunik a écrit :

Pour le 3 avec bash tu peux faire ça directement mais ce n'est pas supporté par tous les shell et je doute que ce soit le résultat attendu :

Code :
  1. echo ${PATH//:/ }




Uniquement en bash (et peut-être korn) et les shells supérieurs style zsh. Mais effectivement ça remplace le ":" par un espace


---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
Reply

Marsh Posté le 28-09-2007 à 18:28:37   

Reply

Marsh Posté le 08-10-2007 à 19:05:50    

Bonjour a tous je suis moi aussi étudiant en premiere année de DUT Informatique et j'ai aussi un tp a faire en base de la programmation. J'aurais donc besoin d'aide car je bloque sur certaines questions. Si quelqu'un veut bien m'aider voici mon adresse msn: ayouboss54@hotmail.fr, merci à vous.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed