Copier des lignes dans un fichier [Shell .sh] - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 30-05-2016 à 18:39:34
hola
effectivement c est pas bien de faire comme ca
|
en clair
je copie group dans group.old
je substitue sur la ligne contenant wireshark le caractere de fin de ligne par la traduction du fichier de liste des users ramene a une ligne unique avec ',' comme séparateur
joue avec ca dans des fichier bidons comme indiques et quand tu as compris ... bha action
Marsh Posté le 31-05-2016 à 12:11:18
Ton code est vachement bien, c'est exactement ce résultat qu'il me faut
Mais lorsque je rentre ta commande sur ma ubuntu :
Code :
|
Celà fonctionne bien mais dans le fichier group j'ai des caractères spéciaux qui n'ont rien à faire là, comment procéder pour ne pas avoir ces "merdouilles" ?
Code :
|
Qu'en pensez vous ?
Marsh Posté le 31-05-2016 à 15:20:33
En utilisant cette commande j'arrive à enlever les ^M mais les infos sont mis à la ligne et pas sur toute la même ligne ...
La commande utilisée pour :
Code :
|
Le résultat :
Code :
|
Marsh Posté le 31-05-2016 à 18:40:34
des ^M
???? sous linux impossible en principe... a moins que tu fasse du copier/coller depuis un putty ??
sinon tu peux fare une passe peur les eliminer
substitute par rien...
s/pattern// ou avec vim par search and replace all etc etc ... y a plusieurs facons de faire
Marsh Posté le 31-05-2016 à 21:25:24
le fichier user est prabablement verole par le ^M ... passes y la commande dos2unix avant traitement et hop...
Marsh Posté le 01-06-2016 à 15:02:39
J'ai donc opter pour ce script qui fonctionne :
Code :
|
Maintenant le tout est de faire un deuxième script qui permet d'enlever les users précédemment ajouté à côté de la ligne wireshark:x:130 afin d'interdire quand on en à besoin l'accès aux captures wireshark pour des questions de sécurité
Marsh Posté le 02-06-2016 à 14:24:51
Au lieu de triturer n'importe comment les fichiers de conf sans regarder comment ils fonctionnent, il est nettement préférable d'utiliser les outils prévu à cet effet.
cf. usermod
Marsh Posté le 30-05-2016 à 15:00:08
Bonjour tout le monde,
Je suis en entreprise et j'ai vraiment un petit niveau en shell et je dois ajouter à la fin du ficher "/etc/group" des lignes contenant des users.
Je m'explique, j'ai d'un côté le fichier /etc/group qui est présenté comme ceci :
wireshark:x:128:toto
Et de l'autre côté j'ai un fichier users.txt, dans ce fichier chaque ligne comprend un username, exemple :
user1
user2
user3
Je voudrais pouvoir via un script shell ajouter en fin du fichier /etc/group ma liste d'users de users.txt sous cette forme :
wireshark:x:128:toto
wireshark:x:128:user1
wireshark:x:128:user2
wireshark:x:128:user3
Il faudrait que les 3 lignes s'ajoutent à la suite les unes des autres et à la suite de wireshark:x:128:toto.
J'ai commencer un script qui n'est pas fini et je pense être sur la bonne voie, des conseils ou idées ?
Merci d'avance