Bonjour à toutes et à tous
alors voila je cherche une commande ou une suite de commande (unix) permettant de recherché et d'exclure des chaînes de caractères dans une liste de fichier.
Je m'explique plus en détail et j'expose ce que j'ai déjà fait.
J'ai une serie de fichier a parcourir pour trouver tel ou tel chaîne de caractère (j'utilise donc un bon vieux grep) seuleument dans les lignes que je vais touver je veux en exclure un certains nombre donc : (grep -E 'blablabla|blobloblo' list_file | grep -v -E 'bliblibli|blublublu') jusque la tout va bien on est d'accord mais après je voudrais avoir une sortie de la forme:
nom_file1:nb_occurences_trouvé
nom_file2:nb_occurences_trouvé
nom_file3:nb_occurences_trouvé
nom_file4:nb_occurences_trouvé
donc après quelque bidouille a base de sort uniq et awk je me retrouve avec une ligne de commande:
(grep -E 'blablabla|blobloblo' liste_file | grep -v -E 'bliblibli|blublublu'
| awk '{print $1}' | awk '-F:' '{print $1}' | sort |uniq -c| awk '{print $2 $1}' )
bon j'avoue c'est barbarre mais ça fonctionne seulement il me manque encore une info.
et je sais que ma commande n'est pas capable de ma la donner.
Je voudrais que lorsqu'il y a aucune occurence de la chaine cherché j'ai :
nom_file:0
et ça je vois pas comment faire
j'ai pensé à un truc du style grep -c mais je ne pourrai plus enlever des ligne après avec un grep -v alors je sèche!!!
alors voila si quelqu'un peu m'aider
en éspérant avoir été assez clair n'hesitez pas si vous avez pas compris j'essayerais d'être encore plus explicite
merci d'avance à toutes et à tous et bonne journée

