comparer proprietaire fichier (UNIX AIX) - Codes et scripts - Linux et OS Alternatifs
Marsh Posté le 21-03-2007 à 14:08:01
plus simplement dans mon exemple, j'ai:
champ1 champ2 champ3
explaeix AEI .dbxhist
explaeix AEI genloc
explaeix AEI key.txt
explaeix AEI Mail
je souhaite qu'il compare le champ 1 a une valeur (ici mysql), si c'ette valeur n'est pas celle attendu alors il m'affiche le champ 3.
Premiere ligne donc, il m'afficherait:
.dbxhist
puis il passerait a la seconde ligne etc etc...
Marsh Posté le 21-03-2007 à 14:21:40
bon t'es gentil Taz mais si c'est pour ne pas aider le mieux c'est de ne rien dire
Marsh Posté le 21-03-2007 à 14:24:27
man find
Marsh Posté le 21-03-2007 à 14:45:43
Super les gars la réponse
Quand vous savez pas une chose, on vous repond va te renseigner ailleurs, sympa chez vous.
Marsh Posté le 21-03-2007 à 14:47:29
exover a écrit : Super les gars la réponse |
te renseigner sur les parametres de la commande find, elle répond exactement à ta question
Marsh Posté le 21-03-2007 à 15:06:21
J'ai trouvé autre chose pour ma part avec la commande awk.
awk '{FS=" "; if($1!="mysql" ) {print $3}}'
Si on demande un renseignement c'est ptetre parcequ'on a cherché avant et qu'on a pas trouvé, c'est sur dire man find ca aide, m'enfin.........
Marsh Posté le 21-03-2007 à 16:02:23
MrHarry a écrit :
|
MAIS RTFM find !
Marsh Posté le 21-03-2007 à 16:29:07
Je suis trop gentil:
find . -not -user mysql |
Mais bon le plus simple si tu veux que tous tes fichiers aient comme propriétaire mysql c'est de faire:
chown mysql * |
Marsh Posté le 21-03-2007 à 16:32:31
MrHarry> merci BEAUCOUP, au moins un qui a compris l'interet d'un forum
leto3>je vais essayer merci a toi egalement
oui je sais pour la commande chown mais je veux afficher les fichier qui ne coniennent pas via un script, les changement s'effctueront manuellement
Merci encore
Marsh Posté le 21-03-2007 à 16:40:13
leto a écrit : Je suis trop gentil:
|
plutot qu'un gruika sed...
Marsh Posté le 21-03-2007 à 16:43:14
exover a écrit : MrHarry> merci BEAUCOUP, au moins un qui a compris l'interet d'un forum |
non, en l'occurence c'est toi qui n'a pas compris l'interet de te mettre sur la piste sans te donner la solution. Si on te donne directement la reponse, tu vas l'utiliser betement sans comprendre ce que tu fais et final tu n'auras rien appris. Si par contre, tu avais pris 5 min pour lire le man de la commande find comme on te l'a indiqué, et que tu avais réfléchi un peu, je pense que tu aurais trouvé tout seul la réponse (ou a defaut revenir demander si tu ne comprenais pas), et la au moins tu aurais appris quelquechose.
Marsh Posté le 21-03-2007 à 16:46:39
exover a écrit : -not n'existe pas sur AIX |
ah ok, effectivement ca change tout désolé dans ce cas.
Spoiler : |
Marsh Posté le 21-03-2007 à 16:47:02
P-Y> oui bien sur, dis moi quand t'as un probleme en mécanique, et que tu demande a un ami, il te dis, va acheter des bouqins de méca et lis, tu trouveras la solution, c'est sympathique vers chez vous serieux.
Quand a dire je n'ai pas cherché, preuve que si puisque j'ai trouvé via la commande awk, le sed ne fonctionne pas apparement, et le find non plus, comme quoi......
Mais maintenant qu'on m'a indiqué le fonctionnement dans ce cas du sed je pourrais recherché un peu plus et peut etre trouvé, pour le find aussi.
Désolé on a pas du tout la meme philosophie d'un forum, j'espere que tu seras bien dans la merde un jour, je me ferais un plaisir de te repondre cherche tu trouveras bien tout seul.
Marsh Posté le 21-03-2007 à 17:00:05
Selon google, il se peut que le find d'AIX comprenne ceci :
find -nogroup mysql -nouser mysql |
Marsh Posté le 21-03-2007 à 17:02:41
j'avais essayé il me répond:
find : 0652-009 Conjonction manquante
vi vi j'avais cherché
Marsh Posté le 21-03-2007 à 17:21:09
Bon ca fonctionne avec un argument (user ou groupe) mais ca ne fonctionne pas si je met les deux argument (user et groupe).
il ne met pas d'erreur il ne m'indique aucun fichier.
Bon je verrais ca demain, la hop retour a la maison.
En tout cas merci a certain d'entre vous.
Marsh Posté le 21-03-2007 à 20:07:49
essaye comme ceci :
find . \( ! -group 'mysql' -o ! -user 'mysql' \)
sous solaris quand tu donne plusieurs options, les \( -o \) sont souvent necessaire. sous AIX a voir...
Marsh Posté le 22-03-2007 à 11:39:49
aknott31> yes ca marche
Merci msieur
edit: ah ben non ca marche pas non plus, il ne me dit pas qu'un fichier est en autre chose
bon tant pis, j'utiliserais le awk, lui fonctionne nickel
Marsh Posté le 23-03-2007 à 10:20:20
Bon voici ma commande awk
ls -ail $VERIF|tail +4|grep -v lost+found|cut -c 22-38,64-100|awk 'BEGIN { printf ("Proprietaire Groupe Fichier\n------------ ------ -------\n" ) }{FS=" "; if($1!="explaeix"||$2!="AEI" ) {printf ("%-12s %-6s %-7s\n", $1," " $2," "$3)}}'
bon en gros ca donne ca comme résultat a l'affichage
Proprietaire Groupe Fichier
------------ ------ -------
root system .mysql_history
J'aimerais savoir comment integrer des exceptions, je m'explique, pour l'heure, il me donne tous les fichiers ayant aurtre chose que explaeix et AEI en utilisateur et groupe, selon le repertoire que je desire.
Déja dans un premier temps j'aimerais qu'il integre une variable de mon script (variable repertoire) comment faire???
Ensuite j'aimerais que celui ci en fonction du repertoire integre des exceptions, c'est a dire, dans le repertoire dison /Exover, tous les fichiers ou dossier doivent etre en explaeix AEI, sauf un qui doit etre en mysql mysql (c'est un exemple), comment faire???
j'aimerais avoir un affichage final en faites comme celui la:
Repertoire Proprietaire Groupe Fichier
---------- ---------- ------- --------
/Exover root system .mysql_history
Voili voilou
si vous avez un peu d'aide sur awk.
Marsh Posté le 21-03-2007 à 11:38:41
Bonjour,
Voila je souhaiterais faire un script qui comparerais les proprietaire d'un repertoire, je m'explique par un exemple:
2049 drwxr-xr-x 7 explaeix AEI 1024 15 mar 10:34 .
2 drwxr-xr-x 6 bin bin 512 30 mar 2005 ..
2066 -rw------- 1 explaeix AEI 750 27 oct 17:01 .dbxhist
4120 drwxr-xr-x 2 explaeix AEI 512 04 sep 2006 genloc
2059 -rw-r----- 1 explaeix AEI 54 09 aoû 2005 key.txt
4099 drwx--x--x 2 explaeix AEI 512 01 sep 2005 Mail
Dans un premier temps il faut que je vire les deux "repertoire" . et ..
Ensuite je souhaite comparer les proprietaire d'un fichier, je veux que tout mon repertoire est pour proprietaire et groupe, mysql mysql, la dans mon exmple ils sont en explaiex AEI.
Commant faire pour que le script m'indique quel fichier n'a pas les bonne propriété??
Merci de votre aide