[NOOB] Shell avec plusieurs opérations
Résolu/Fermé
A voir également:
- [NOOB] Shell avec plusieurs opérations
- Classic shell windows 11 - Télécharger - Personnalisation
- Shell startup windows 10 - Guide
- Efi shell version 2.50 - Forum Windows 10
- Efi shell version 2.31 - Forum Programmation
- Ssh secure shell download - Télécharger - Divers Web & Internet
7 réponses
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
28 janv. 2009 à 14:53
28 janv. 2009 à 14:53
Salut,
Je pense que tu trouves juste le contenu de dernier fichier
La rédirection > écrase le contenu à chauqe accès
Essaie >> au lieu de >
Je pense que tu trouves juste le contenu de dernier fichier
La rédirection > écrase le contenu à chauqe accès
Essaie >> au lieu de >
Ca marche,
Tu es juste un génie !! Quand je pense que je viens de passer une nuit blanche dessus...
merci =)
Tu es juste un génie !! Quand je pense que je viens de passer une nuit blanche dessus...
merci =)
Autre petite question (désolé ^^)
le fichier généré contient des ligne qui commencent par "100", "101" etc.
je voubrait faire un grep dynamique de type :
mais comment puis je préciser le grep ?? grep "[0-9]" fichier.txt |uniq -c |sort -r|cut -f2>N[0-9].txt; ??
Ca me semble un peu abstrait...
le fichier généré contient des ligne qui commencent par "100", "101" etc.
je voubrait faire un grep dynamique de type :
grep "100" fichier.txt |uniq -c |sort -r|cut -f2>N100.txt; grep "101" fichier.txt |uniq -c |sort -r|cut -f2>N100.txt; etc
mais comment puis je préciser le grep ?? grep "[0-9]" fichier.txt |uniq -c |sort -r|cut -f2>N[0-9].txt; ??
Ca me semble un peu abstrait...
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
28 janv. 2009 à 18:27
28 janv. 2009 à 18:27
Re,
Pour grep 101 c'est N101.txt ?!
Pour grep 102 c'est N102.txt?!
etc.
Pour grep 101 c'est N101.txt ?!
Pour grep 102 c'est N102.txt?!
etc.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
28 janv. 2009 à 19:11
28 janv. 2009 à 19:11
Salut,
Pour ton 1er problème, un simple :
Pour ton 1er problème, un simple :
cat A*.txt > resultat.txtaurait amplement suffit ;-))
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
28 janv. 2009 à 19:13
28 janv. 2009 à 19:13
Salut,
Oui, j'ai pensé au début de lui donner ça.
Mais j'ai pensé de lui montrer l'erreur ;-)
Oui, j'ai pensé au début de lui donner ça.
Mais j'ai pensé de lui montrer l'erreur ;-)
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
28 janv. 2009 à 19:17
28 janv. 2009 à 19:17
Salut,
T'as bien fait ;-))
Quelque part le prof que tu a été est toujours là ;-))
T'as bien fait ;-))
Quelque part le prof que tu a été est toujours là ;-))
Avant tout, merci pour vos reponses !!
en fait
Pour ce qui concerne mon 2eme soucis je veux faire un grep dans une boucle en fait. Je n'etais peux etre pas tres clair dans mon explication
quand je fait
Ca marche mais j'ai a peu près 8 000 grep a faire donc c'est un peu long.
Donc je cherche à faire une boucle mais je ne maitrise pas tres bien le langage unix.... (et poutant je potasse !!)
j'aimerais faire quelque chose de ce type :
mais ca ne donne rien....
Je precise que chaque ligne de mes fichiers commencent par des chiifres, cequi explique "^[0-9]" :)
Est ce que j'ai fait une faute d'orthographe dans ma boucle ??
en fait
cat A*.txt > resultat.txtne fonctionne pas a cause de la boucle, les résultats ne s'implementent pas mais en utilisant '>>' ca marche =)
Pour ce qui concerne mon 2eme soucis je veux faire un grep dans une boucle en fait. Je n'etais peux etre pas tres clair dans mon explication
quand je fait
grep "100" fichier.txt |uniq -c |sort -r|cut -f2>N100.txt; grep "101" fichier.txt |uniq -c |sort -r|cut -f2>N100.txt; grep "102" fichier.txt |uniq -c |sort -r|cut -f2>N100.txt; grep "103" fichier.txt |uniq -c |sort -r|cut -f2>N100.txt;
Ca marche mais j'ai a peu près 8 000 grep a faire donc c'est un peu long.
Donc je cherche à faire une boucle mais je ne maitrise pas tres bien le langage unix.... (et poutant je potasse !!)
j'aimerais faire quelque chose de ce type :
for i in dossier/A*.csv do grep "^[0-9]" head.txt | sort >B*.csv done
mais ca ne donne rien....
Je precise que chaque ligne de mes fichiers commencent par des chiifres, cequi explique "^[0-9]" :)
Est ce que j'ai fait une faute d'orthographe dans ma boucle ??
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
>
poireau
28 janv. 2009 à 22:42
28 janv. 2009 à 22:42
La syntaxe "cat A*.txt > resultat.txt" n'est pas à insérer dans une boucle, mais la commande en elle même produit le même résultat que :
for i in "A*.txt" do echo $i >> resultat.txt done;-))
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
28 janv. 2009 à 21:46
28 janv. 2009 à 21:46
Re,
for i in $(ls dossier/A*.csv) do grep "^[0-9]" $i | sort >B*.csv done
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
>
poireau
28 janv. 2009 à 22:16
28 janv. 2009 à 22:16
Re,
Ben, oui, je t'ai demandé ici http://www.commentcamarche.net/forum/affich 10739774 noob shell avec plusieurs operations?#4
Mais tu n'as jamais répondu
Ben, oui, je t'ai demandé ici http://www.commentcamarche.net/forum/affich 10739774 noob shell avec plusieurs operations?#4
Mais tu n'as jamais répondu
poireau
>
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
28 janv. 2009 à 22:21
28 janv. 2009 à 22:21
Ah OK je n'avais pas compris ta question, je croyais que tu me disais de faire
grep 101 c'est N101.txt puis
grep 102 c'est N102.txt
dc ca faisait beaucoup de grep...
grep 101 c'est N101.txt puis
grep 102 c'est N102.txt
dc ca faisait beaucoup de grep...
J'ai enfin trouvé la solution dc je la poste !
Rappel : le but est de prendre les numero de chaque ligne (qui correspondent a une reference qui peut se repeter) d'un fichier de les classer et le le mettre dans un doc qui s'apelle : le numero du bebut de la ligne.txt.
voilou, merci a ceux qui m'ont aidé =)
Rappel : le but est de prendre les numero de chaque ligne (qui correspondent a une reference qui peut se repeter) d'un fichier de les classer et le le mettre dans un doc qui s'apelle : le numero du bebut de la ligne.txt.
for i in $(cat monfichier.txt) do > nada$i.txt done # ca genere des fichier vides for i in $(ls "le dossier ou se trouvent les fichiers" |grep "nada" | sed 's/nada//g") do cat monfichier.txt |grep "$i" >> Final$i.txt
voilou, merci a ceux qui m'ont aidé =)