Bonjour,
Je débute en script shell et j'ai encore pas mal de mal avec les regex donc je vous prie d'être gentil pour mes questions qui pourront vous sembler "bête"Merci.
Voila mon problème :
J'ai un fichier de plusieurs ligne, dans ce fichier j'ai cette ligne :
Mon script aura pour but d'aller supprimer un utilisateur dans le fichier, donc quand on lance le script, on lui indique quel utilisateur supprimer (jusque la je n'ai pas de soucis), chercher ma ligne non plus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part users.allowed = {'0000001', '0000002', '0000003','0000004', '0000005'}
Par contre ce que je n'arrive pas c'est comment supprimer l'utilisateur ainsi que les simples quote qui l'entoure et au besoin la virgule avant ou après.
Exemple : je veux supprimer l'utilisateur 0000001 donc ma ligne devra être à la fin :
Si je souhaite supprimer l'utilisateur 0000002 ma ligne sera la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part users.allowed = {'0000002', '0000003','0000004', '0000005'}
Et pareil pour la suppression de l'utilisateur 0000005
Code : Sélectionner tout - Visualiser dans une fenêtre à part users.allowed = {'0000001', '0000003','0000004', '0000005'}
Voila les 3 cas possible a prendre en compte, si l'utilisateur est le premier alors il faut le supprimer ainsi que les simples quote et la virgule après lui,
Code : Sélectionner tout - Visualiser dans une fenêtre à part users.allowed = {'0000001', '0000002', '0000003','0000004'}
Si l'utilisateur est le dernier de la liste, alors on le supprime ainsi que les simples quote et la virgule qui est juste avant
Et si l'utilisateur est entouré d'autres utilisateurs alors il faut le supprimer, supprimer les simples quote et une virgule avant ou après.
J'espère avoir été clair, je vous remercie pour votre aide![]()
Partager