Dans mon script bash, j'essaie d'imprimer une ligne si une certaine chaîne n'existe pas dans un fichier.
if grep -q "$user2" /etc/passwd; then
echo "User does exist!!"
Voici comment je l'ai écrit si je voulais que la chaîne existe dans le fichier, mais comment puis-je la modifier pour qu'elle s'affiche "l'utilisateur n'existe pas" si l'utilisateur n'est pas trouvé dans le fichier / etc / passwd?
if ! grep ...
déclaration négative n'a pas fonctionné. C'est donc une alternative.Je le résous avec un simple liner:
La commande vérifie tous les fichiers du répertoire avec l'extension txt et écrit la chaîne de recherche (c'est-à-dire "tâches:") si elle est trouvée ou bien le nom du fichier.
la source
Vous pouvez utiliser l' option grep "-L / --files-without-match" , pour vérifier si le fichier ne contient pas de chaîne:
la source