J'ai un petit soucis en korn shell avec l'utilisation d'un grep dans ce morceau de code
Code :
elif ls $LOCAL_PROCESS_DIR | head -1 | grep -q -w 'CORF13|Sheet1'; then echo "Sheet 1 OK";
file=$(ls $LOCAL_PROCESS_DIR | head -1 | egrep -w 'CORF13|Sheet1')
mv $LOCAL_PROCESS_DIR/$file $LOCAL_PROCESS_DIR/KPI_CORF13_KPI1.CSV
Je veux qu'il rentre dans la condition si le premier fichier de mon rep contient le mot CORF13 ET le mot Sheet1
A priori quand je lance la commande "ls" seule il me retroune le fichier si il est la sinon il retourne rien...
Par contre dans mon code si le premier fichier ne contient pas les 2 mot il rentre quand même dans le code alors qu'il devrait pas vu que la commande returne un False, la il considere que c'est tjs True
Si quelqu'un pouvait m'aider pour ce petit problème à 2 balles mais qui me casse la tête
# Expression régulière étendue.
Posté par dega . Évalué à 1.
Une autre facon est de mettre \ devant |. Cette approche est cependant moins lisible que les 2 premières.
# le symbole | veux dire ou !!
Posté par CoreDumped . Évalué à 1.
... | grep '.*CORF13.$Sheet1'
si les deux expressions sont dans n'importe quel ordre... | grep '.*CORF13.$Sheet1|.*Sheet1.*CORF13'
CoreDumpedSuivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.