Bonjour.
Je présente mon problème. Je dois réaliser un script qui parcours de manière récursive des dossiers où se trouvent des codes sources cplusplus.
Dans ces derniers je dois trouver tous les appels qui sont fait à certaines fonctions données.
Actuellement voilà où j’en suis :
#!/bin/bash
$oldIFS;
oldIFS=IFS;
IFS=$'n'
$maVariable;
maVariable=($(grep -RHn .*getLogsList(.* ./)) #pour trouver toutes les lignes où se trouvent "getLogsList("
len=${#maVariable[*]}; #recupere la taille de maVariable
for (( i=0; i<len; i++ ))
do
echo ${maVariable[i]}; #affichage permettant de verifier si ça fonctionne
done
IFS=$oldIFS
Le problème étant que lors de certains appels, les arguments sont placés un à un à la ligne. Par exemple :
getLogsList(arg1,
arg2,
arg3);
Et grep ne me récupère que :
getLogsList(arg1,
Ce qui est assez logique. Ca fait un moment que je cherche une solution et je tourne en rond.
Un petit coup de pouce ? ^^ Je précise que je suis novice en scripting
Merci beaucoup en tous cas
Edité le 05/11/2013 à 17:44