besoin d'aide ... [shell sous linux] - Shell/Batch - Programmation
Marsh Posté le 24-03-2004 à 16:25:05
patastronch a écrit : |
Alors pourquoi tu n'utilises pas la fonction recherche du forum ?
Marsh Posté le 24-03-2004 à 16:29:22
j ai cherché mais y a telment de post que j ai abandonné ...
On peut pas le faire ??? arf ...
Marsh Posté le 24-03-2004 à 17:49:59
Si tu veux afficher une seule ligne, la 12 par exemple :
sed -n '12p' fichier
awk 'NR==12' fichier
Pour afficher un fichier à partir d'une ligne, la 12 par exemple :
tail +12 fichier
sed -n '12,$p' fichier
awk 'NR>=12' fichier
Marsh Posté le 24-03-2004 à 18:08:26
merci beaucoup
C est quoi exactement sed ? et awk ?
Et pour finir une derniere question:
Je recolte on va dire la phrase "voici le texte1" dans un fichier.
et maintenant chaque mot je voudrais l'identifier par exemple texte1 savoir le differentier de texte2 ou 3 . est il possible de recuperer un character precis dans un mot ?
Marsh Posté le 24-03-2004 à 18:14:07
pas sous nux. merci
Marsh Posté le 24-03-2004 à 18:18:55
ah ?? zut , en fait mon probleme c est : j ai plusieurs mot qui commence par A suivit d une valeur comme A1 ou A7 ou A89 melangé a dautres mots qui peuvent etre collé par exemple: voiA2A4vjA6 et je voudrais recuperer les A# separement ...
Quelqu un aurait une idée ?
sachant que je pourais tres bien avoir AZEA2ASE et il me faut recuperer que A2 dans ce mot.
merci d'avance
Marsh Posté le 24-03-2004 à 18:20:31
dos me semble léger dans ce cas. peut-être en python ou en C
Marsh Posté le 24-03-2004 à 18:22:29
euh c est pas du dos mais du shell sous linux (enfin ca doit se ressembler je pense)
Marsh Posté le 24-03-2004 à 18:25:49
tu dois pouvoir y arriver dans ce cas. commence par changer le titre du topic
Marsh Posté le 24-03-2004 à 18:26:34
Ou sinon alors comment peut on appeler un programme en c a partir d'un script? par exemple mon script prendrait des arguments puis appelerait un programme c avec les arguments donné au script
mais je prefererais que ce soit que du shell si c est possible ...
Marsh Posté le 24-03-2004 à 19:35:47
awk fait parti des commandes que l'on se doit de connaître si l'on veut écrire des scripts un tant soit peu évolués (au même titre que sed ou cut)
La commande suivante affiche tous les mots trouvés dans le fichier.
awk ' |
Marsh Posté le 24-03-2004 à 19:46:55
sincerement un grand merci, me reste pus qu a comprendre pourquoi ca marche =)
(il manque juste une petite incollade =) )
D aileur si t as un site (en francais ...) qui explique bien les commande que tu utilises je suis preneur =)
encore merci !!!
Marsh Posté le 24-03-2004 à 20:01:16
Il existe une commande qui permet de determiner le type d'un variable ?
par exemple pour savoir si $2 est un entier ?
Marsh Posté le 24-03-2004 à 22:54:26
if expr "$2" : '[0-9]\+$' > /dev/null
then
echo Numeric
fi
Marsh Posté le 25-03-2004 à 02:21:00
Sinon pour avoir la ligne N tu peux toujours faire head -n N | tail -n 1.
Marsh Posté le 25-03-2004 à 10:45:12
En voyant la solution tail/head qui fonctionne trés bien, je me suis dit qu'en terme de perf ce n'est pas trés optimisé, les N lignes sont lues 2 fois.
Du coup j'ai repris les deux commandes que j'avais indiqué car elles aussi ne sont pas optimisées. Dans les deux cas, une fois la ligne trouvée et affichée on continu à lire le fichier d'entrée, ce qui n'est pas top.
Voici donc les nouvelles versions des commandes :
sed -n '12{;p;s;}' fichier
awk 'NR==2 {print;exit}' fichier
@patastronch
Ne cumule pas les questions dans un même sujet (affichae ligne, récup mots, test numéricité), ouvre un nouveau sujet par question.
Marsh Posté le 25-03-2004 à 10:57:46
aigles a écrit : @patastronch |
Non, tant que ça a un rapport avec la question initiale...
http://forum.hardware.fr/forum2.ph [...] 544&cat=10
Citation : [08] Si vous avez une autre question qui a un rapport étroit avec la première, et que les personnes qui vous ont répondu la premère fois sont susceptibles d'y répondre, posez la question dans le même topic, en modifiant éventuellement le titre si cela vous paraît approprié. Cela permet de ne pas devoir réexpliquer tout le contexte ou évite que les participants posent des questions répondues précédemment. |
Marsh Posté le 25-03-2004 à 14:24:20
Les trois questions n'ont pas de rapport entre elles si ce n'est que c'est de la programmation shell.
Si l'on considère qu'elles ont toutes un rapport étroit ou un contexte commun, alors patastronch peut poser toutes les questions qu'il veut dans se sujet et ce jusqu'à qu'il maîtrise suffisamment le shell pour pouvoir se passer de ce forum.
C'est une idée à creuser ça, un sujet par auteur et non par question...
Marsh Posté le 26-03-2004 à 03:24:53
eh ne vous enguelez pas pour ca j ouvrirais un autre topic la prochaine fois aigle a raison ce sont des questions totalement differentes.
Merci pour votre aide je commence a comprendre le fonctionnement.
Marsh Posté le 24-03-2004 à 16:22:36
Voila je débute en script (shell) et je voulais savoir comment a partir d'un script on affiche une ligne precise d'un fichier.
En fait je chercherai l'equivalent de head -n 1 fichier.txt pour afficher une ligne choisie au lieu de la premiere ligne
merci d'avance
Message édité par patastronch le 24-03-2004 à 18:30:04