Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Appel à contributeurs. Réunion pour la refonte du wiki lundi 26 juin

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

nombre réponses : 25

#0 Re : -1 »  Compter le nombre de numéro sur une ligne à partir d'une colonne AWK » Le 27/06/2017, à 20:13

Watael
Réponses : 10

J'essaye de compter le nombre de numéro après le mot "Position"

et qu'est-ce que tu proposes ?

pour quelqu'un qui n'est pas informaticienne, c'est quand même fou le nombre d'exercices auxquels il t'est demandé d'apporter une solution !

il y a des gens qui font des efforts pour être intelligible, qui exposent proprement leur requête, montrent leur premier jet, explique où ils bloquent..., et que j'ai plaisir à aider.

#1 Re : -1 »  Compter le nombre de numéro sur une ligne à partir d'une colonne AWK » Hier à 11:47

Watael
Réponses : 10

je récupère chaque ligne dans une variable
je transforme cette variable en tableau

qu'est-ce que tu t'enquiquine ?

mapfile -t ar <"$fichier"
for line in "${ar[@]}"...

ça t'évite les modifications périlleuses de l'IFS.

#2 Re : -1 »  Compter le nombre de numéro sur une ligne à partir d'une colonne AWK » Hier à 13:24

Watael
Réponses : 10

il faut juste penser à quotter la variable pour la lire

il faut toujours mettre les variables entre guillemets. toujours !

#3 Re : -1 »  Compter le nombre de numéro sur une ligne à partir d'une colonne AWK » Hier à 15:15

Watael
Réponses : 10

non, le bât.

$ cat "$fichier"
##classe1 score 
premier          abc    12 09 6            personne=nom1 17 20 Position=5 69 156 221;  ====> Ici le nombre de position que je veux à partir de Position est : 4
premier          abc     11 9  6            personne=nom1 16 19 ;
premier         abc     30 9 15           personne=nom1 14 19  Position=5 12; ======> le nombre de position ici est 2
##classe2 score 
 
deuxième       abc     5 7 9            personne=nom2 15 17 Position=7 14 25 29 37 42 59 62 77 96 102  ; =====> le nombre de position ici est : 11 
deuxième       abc     56 5 9          personne=nom2 10 20  ;
deuxième      abc     8 9 4           personne=nom2  8 13;
deuxième     abc    1 56 7           personne=nom2 5 12 ;     "
$ mapfile -t array < "$fichier"
$ for line in "${array[@]}"; do if [[ $line =~ Position= ]]; then echo ">-$line-<"; fi; done
>-premier          abc    12 09 6            personne=nom1 17 20 Position=5 69 156 221;  ====> Ici le nombre de position que je veux à partir de Position est : 4-<
>-premier         abc     30 9 15           personne=nom1 14 19  Position=5 12; ======> le nombre de position ici est 2-<
>-deuxième       abc     5 7 9            personne=nom2 15 17 Position=7 14 25 29 37 42 59 62 77 96 102  ; =====> le nombre de position ici est : 11 -<

#4 Re : -1 »  Compter le nombre de numéro sur une ligne à partir d'une colonne AWK » Hier à 22:15

Watael
Réponses : 10

et, ça ne correspond pas à la sortie attendue ?

PS: tu dois aussi lutter contre les exit 0. wink

#5 Re : -1 »  Flux de données dans un terminal » Hier à 01:00

Watael
Réponses : 31

non, pas

while $(true)

, juste

while true

, ou

while :

#6 Re : -1 »  Trouver IP machines du réseau local » Le 22/06/2017, à 14:41

Watael
Réponses : 11

salut,

et sans ping ?

avec ping, une bête boucle sur toutes les adresses possibles de ton réseau...
encore faut-il que toutes les machines soient allumées à ce moment-là.

#7 Re : -1 »  Linux sur une veille machine » Le 27/06/2017, à 15:13

Watael
Réponses : 7

Celeron M CPU 430
1733 Mhz
~1500 Mo de RAM

c'est surdimensionné pour Toutou.

faire une install minimale de Debian (si elle ne propose pas d'installer LXDE toute seule), puis installer X, LXDE, et les programmes nécessaires !

ce n'est pas tant un problème de distribution, que d'options retenues par cette dernière pour l'installation.

la dernière Debian que j'ai installée proposait 3 ou 4 choix (si je me souvient correctement, voire davantage), plus une installation minimale, qui laisse toute latitude pour ajouter, ou pas, ce qu'on veut.

#8 Re : -1 »  Délimiter un champs avec awk » Le 27/06/2017, à 00:44

Watael
Réponses : 9

«
Philippe : Votre mâchoire vous êtes blessé, là ?
Antoine : Hein ?
Philippe : Vous avez mal quand vous parlez, là, non ?
Antoine : Quo ?
Philippe : Votre mâchoire, ça va là ?
»
Bienvenue chez les Ch'tis.

non, parce que, là, on ne vous comprend pas très bien.

#9 Re : -1 »  Délimiter un champs avec awk » Le 27/06/2017, à 01:49

Watael
Réponses : 9

quelle importance peut avoir ces "classes" ?
apparemment, tu veux simplement additionner les derniers champs avant le point-virgule !

puis, tu veux additionner le résultat de chaque ligne pour chaque personne (nom1, nom2, nomN...).

et après ?

#10 Re : -1 »  sed et dernier motif » Le 25/06/2017, à 18:55

Watael
Réponses : 3

salut,

$ pattern='[aA]'
$ printf "%s\n" a b a b A b | sed -n ':loop;$!{N;bloop}; s/\(.*\n\)'"$pattern"'\(.*\)/\1xxxx\2/p'
a
b
a
b
xxxx
b

?

#11 Re : -1 »  sed et dernier motif » Le 25/06/2017, à 21:50

Watael
Réponses : 3

quelqu'un a-t-il prétendu que sed est lisible ?
lol

mais là, ce n'est pas très compliqué :
tant qu'on n'est pas arrivé à la fin du ficher - $!
on ajoute la ligne courante au tampon - N
on retourne à la marque au nom arbitraire loop - b loop
enfin, on utilise la caractéristique "greedy" (glouton) des regex pour la substitution avec référence arrière - \1 et  \2 correspondant au premier et deuxième motif entre parenthèse.

#12 Re : -1 »  [clôt]Traitement de gros fichiers » Le 23/06/2017, à 14:57

Watael
Réponses : 22

salut,

il faut n'appeler awk qu'une seule fois :
¡ code non-testé, très certainement plein d'erreurs !

awk -v nb="$Nb" -v position_N="$position_N" 'j++ < nb {i f(NR == position_N+5*($j-1)+2){ if (++n == 4){printf("%s,%s,%s,%s\n",ar[1],ar[2],ar[3],ar[4]); delete ar}; ar[n]=$0}}' fich

juste pour donner une idée de piste à suivre...

Edit : le shell sera plus lent que awk.

#13 Re : -1 »  [clôt]Traitement de gros fichiers » Le 23/06/2017, à 18:36

Watael
Réponses : 22

il faudrait que tu nous donnes aussi Nb et position_N.
qu'on puisse tester ton script sur l'échantillon de données présenté,

et nous confirmer les données du fichier en entrée, et celles de la sortie correspondante.
j'ai un doute...

#14 Re : -1 »  [clôt]Traitement de gros fichiers » Le 23/06/2017, à 21:34

Watael
Réponses : 22

ou le shebang du script bash, auquel cas le script est exécuté par /bin/sh qui n'est souvent pas un lien vers /bin/bash, et qui ne dispose pas de tableau.

les novices ne sont souvent pas compatibles avec Linux. big_smile

Edit:
pas compatible, pas compatible...

$ awk 'NR<=6 && NR>1 {tab[++n]=$0} n && NR==6 {print tab[1],tab[3],tab[4],tab[5]; NR=1; n=0}' "$fich_"
129 6.5 -1 0
128 7 -1.5 0
127 6.75 -1.25 5.E-1
126 6.25 -1.25 5.E-1

non, mais oh !

#16 Re : -1 »  [RESOLU] Afficher les "raccourcis clavier" du shell » Le 21/06/2017, à 17:18

Watael
Réponses : 5

- quelle est ta couleur préférée ? le rouge ou le bleu ?
- oui, exactement !

bon, alors, le rouge ou le bleu ?

#18 Re : -1 »  Copie du dossier /home impossible [résolu] » Le 18/06/2017, à 15:43

Watael
Réponses : 15

salut,

montre-nous ce que tu fais, avant, pendant, après.

Edit :
les deux machines ne sont pas en réseau ?
tu pourrais alors utiliser rsync...

#19 Re : -1 »  Copie du dossier /home impossible [résolu] » Le 18/06/2017, à 20:45

Watael
Réponses : 15
  • ouvre un terminal

  • monte ta clé sur /mnt

  • copie /home en récursif vers /mnt

  • liste le contenu de /mnt

  • démonte /mnt

#20 Re : -1 »  Problème .bashrc [Résolu] » Le 21/06/2017, à 03:02

Watael
Réponses : 2

salut,

je suivais un cour sur openclasseroom

alors pourquoi ne pas poser la question sur openclasssrooms ?

- à la ligne 50, il y a trois lignes à commenter
- à la ligne 96, tu appelles un alias qui n'est pas encore défini
- à la ligne 97, tu t'emmêles les pinceaux entre les doubles et les singles quotes, les parenthèses de substitution de commandes...

#21 Re : -1 »  Table de Hash avec awk » Le 19/06/2017, à 12:35

Watael
Réponses : 3

salut,

désolé, ce n'est pas clair. sad

qu'appelles-tu une "table de hash" ?
quelle est la sortie attendue ?

#22 Re : -1 »  problème d'utilisation de shred » Le 15/06/2017, à 23:17

Watael
Réponses : 30

salut,

comme tu peux le voir dans la commande que tu donnes, c'est le chemin du périphérique qui est utilisé, et pas son point de montage.
pour utiliser dd le périphérique doit d'ailleurs ne pas être monté.

et merci de mettre le code entre balise code (le bouton <> ) dans la petite barre d'outils.

#23 Re : -1 »  Extraire un lien d'un texte sur une même ligne » Le 16/06/2017, à 19:23

Watael
Réponses : 9

salut,

on préférerais partir du fichier d'origine, et que tu nous montres ce que tu souhaites obtenir.

#24 Re : -1 »  Extraire un lien d'un texte sur une même ligne » Le 16/06/2017, à 20:21

Watael
Réponses : 9

python + beautifulSoup

pour du HTML versatile, il n'y a pas mieux.
en shell, tu vas galérer à essayer de gérer tous les cas possibles. sad