Controler l'install d'un soft via Terminal?

docnaturre

Membre confirmé
22 Octobre 2007
12
2
Paris 18e
Salut les génies;) !
Débutant en unixeries, je suis à la recherche -désespérée- d'une ligne de commande ou d'un script qui permette, après installation d'un soft, un listage sûr de tous les fichiers supplémentaires ajoutés à mon disque.
Vos lumières seraient les plus que bienvenues: je rame, je rame…!
 
Il faudrait déjà connaître la méthode d'installation dudit logiciel.

Si c'est par copie, il suffit de faire un ls -lR du répertoire destination.

Si tu l'as installé par un paquetage (.pkg), il y a un dossier correspondant dans les répertoires suivant :
- /Library/Receipts : si c'est une installation globale
- ~/Library/Receipts : si c'est une installation limitée à ton compte

Un exemple : tu installes Onyx et, à la fin, tu as un dossier /Library/Receipts/Onyx.pkg.
Si tu vas voir ce qu'il contient, tu trouveras un fichier : /Library/Receipts/Onyx.pkg/Contents/Archive.bom.

Si tu fais
Bloc de code:
lsbom /Library/Receipts/Onyx.pkg/Contents/Archive.bom
tu verras tous les éléments installés sur le système.
Je pense que dans le fichier /Library/Receipts/Onyx.pkg/Contents/Info.plist tu trouveras le dossier à partir duquel sont renseignés les chemins relatifs donnés par Archive.bom, avec la clef IFPkgRelocatedPath.
 
.

Si c'est par copie, il suffit de faire un ls -lR du répertoire destination.

Si tu l'as installé par un paquetage (…) Je pense que dans le fichier /Library/Receipts/Onyx.pkg/Contents/Info.plist tu trouveras le dossier à partir duquel sont renseignés les chemins relatifs donnés par Archive.bom, avec la clef IFPkgRelocatedPath.

Paumé de chez paumé je suis… ls -lR /Applications/monsoft m'indique une liste de ressources que j'obtiens aussi en affichant le contenu du paquet par un click droit. Mais pas le chemin des dossiers/fichiers secondaires liés à l'installation de monsoft (ApplicationSupport, Preferences,…) C'est de ceux-là que je cherche à obtenir la liste autrement - si possible- qu'en tâtonnant dans les bibliothèques.

La manoeuvre via lsbom me laisse aussi perplexe: après une heure de sueur intense j'ai réussi à afficher par cat le fichier Onyx.pkg/Contents.Info.plist et à localiser la clef IFPkgRelocatedPath mais rendu à ce point, que faire pour revenir à mes moutons: obtenir la liste des éléments ajoutés à mon DD le jour de l'installation d'Onyx.:confused:
 
La commande lsbom sur l'archive d'un paquetage permet de connaître les fichiers installés sur le système pour ce même paquetage. Mais le chemin indiqué est relatif. Pour connaître le point de départ de l'installation, c'est la clef IFPkgRelocatedPath qui donne l'indication.

Pour reprendre mon exemple, la commande
Bloc de code:
lsbom /Library/Receipts/OnyX.pkg/Contents/Archive.bom
renvoie quelque chose comme :
lsbom a dit:
. 40755 501/80
./OnyX.app 40755 501/80
./OnyX.app/Contents 40755 501/80
./OnyX.app/Contents/Info.plist 100644 501/80 947 1461554567
./OnyX.app/Contents/MacOS 40755 501/80
./OnyX.app/Contents/MacOS/OnyX 100755 501/80 42348 3704093691
./OnyX.app/Contents/PkgInfo 100644 501/80 8 742937289
./OnyX.app/Contents/Resources 40755 501/80
./OnyX.app/Contents/Resources/Appearance.tiff 100644 501/80 4850 1276692542

...
Et dans le fichier /Library/Receipts/OnyX.pkg/Contents/Info.plist, on voit la clef :
Info.plist a dit:
<key>IFPkgRelocatedPath</key>
<string>/Applications</string>

Les chemins indiqués par lsbom sont donc relatifs à /Applications. Il y a donc les fichiers/dossiers : /Applications/Onyx.app, /Applications/Onyx.app/Contents etc.
 
bompi, mille mercis, j'y vois un peu moins noir… Me reste plus qu'à :eek: comprendre le lien pratique entre tout ça et les dossiers installés par Onyx ailleurs que dans /Applications… Mais bon, je te supplie de pas te sentir obligé de me répondre, t'es pas ma mère après tout… Je vais peut-être aller faire un tour du côté de chez Titanium. Encore merci.
 
J'ai fini par trouver mon bonheur:D avec <mdfind monsoft>.

J'hésite pourtant à signaler la discussion comme résolue: mdfind liste tous les fichiers qui contiennent l'argument <monsoft> et il me reste à comprendre comment faire un tri dans les résultats. J'ai cru flairer une piste côté <xargs> mais ça m'a paru d'un emploi un peu délicat et j'ai attrapé mal à la tête avant d'avoir déchiffré la page man.
 
Bloc de code:
find /usr -name su* | xargs grep man9
grep man9 `find /usr -name su*`
/Library/Receipts/Automator.pkg/Contents/Archive.bom | grep Spotlight.action

Et cetera
:coucou:
 
Je crois que tu as raison d'h&#233;siter ;)
 
Bloc de code:
find /usr -name su* | xargs grep man9
grep man9 `find /usr -name su*`
/Library/Receipts/Automator.pkg/Contents/Archive.bom | grep Spotlight.action

Et cetera
:coucou:

Merci pour ce joli poème chinois!… Rien qu' à l'idée de le déchiffrer, la sueur m'en dégouline déjà jusqu'aux chevilles :afraid: 'su' c'est un truc dangereux ça, non?
 
Je crois que tu as raison d'hésiter ;)

Un vieux reste de lucidité&#8230; Bon, j'ai pris le sarcasme en pleine figure ;) et il est mérité mais tu soupçonnes mal peut-être l'exploit -pour moi- d'avoir seulement réussi à débusquer ce satané mfind&#8230; C'est un monde Unix, je suis comme à poils au milieu de la forêt.
Cela dit, j'ai quand même réussi à virer à la main et in extenso DivX dont je ne savais que faire. Ça m'a pris une petite heure, mais bon&#8230;
 
  • J’aime
Réactions: bompi
Un vieux reste de lucidité… Bon, j'ai pris le sarcasme en pleine figure ;) et il est mérité mais tu soupçonnes mal peut-être l'exploit -pour moi- d'avoir seulement réussi à débusquer ce satané mfind… C'est un monde Unix, je suis comme à poils au milieu de la forêt.

mais tu veux vraiment te familiariser avec Unix, ou c'est juste que tu n'as pas pensé qu'on peut faire tout ça directement depuis le Finder de MacOS X ???? :confused:
 
Un vieux reste de lucidité… Bon, j'ai pris le sarcasme en pleine figure ;) et il est mérité mais tu soupçonnes mal peut-être l'exploit -pour moi- d'avoir seulement réussi à débusquer ce satané mfind… C'est un monde Unix, je suis comme à poils au milieu de la forêt.
Cela dit, j'ai quand même réussi à virer à la main et in extenso DivX dont je ne savais que faire. Ça m'a pris une petite heure, mais bon…
Aucune mauvaise intention de ma part, juste un peu d'ironie (facile).
 
Merci pour ce joli poème chinois!&#8230; Rien qu' à l'idée de le déchiffrer, la sueur m'en dégouline déjà jusqu'aux chevilles :afraid: 'su' c'est un truc dangereux ça, non?

essaye il n y a rien de dangereux ds ce que je tai donne c'est pas mon genre, c est juste des filtres sur des resultats en lecture

find /usr -name su* | xargs grep man9


##trouve dans /usr tout les noms qui commencent par su## PUIS ##attrape le resultat et redirige vers le deuxieme filtre##: ET tout ce qui contient man9

un conseil si tu veux apprendre ne copie colle pas, mais prefere la reecriture
 
A REMY
O Remy venerable sage :zen: :
J'ai installé Little Snitch. En patouillant dans Systeme/Library, dossier par dossier, tout à la souris, j'ai débusqué au bout de trois quarts d'heure -arghh- un fichier LittleSnitch.kxt…
Dans mon systeme à moi chéri. Sans me prévenir.
J'ai essayé de te le retrouver par Spotlight: rien. Par pomme-f: que dalle de chez désert pelé.
Et puis par hasard, il y a quelques jours, sur un forum Apple je tombe sur un joli (de mémoire) <keststat | grep -v apple> qui sentait bon à plein nez. Je te le teste direct dans le bash: en 1/2 seconde j'avais mon LittleSnitch.kxt qui s'avouait, en vert sur noir, cerné à fond. C'était tellement bon que j'en ai crié de joie. Heureusement la voisine du dessus a bon caractère: c'était dans les 4h du mat.

A TATOUILLE
"dangereux" était pour blaguer.

Tu aurais la charité de te fendre d'un troisième post tu me dirais:
- si je dois taper <entree> trois fois ou seulement aller à la ligne et <entree> à la fin.
- j'ai pompé sur RealWorks un pas à pas pour rendre exécutable un script écrit sous Textedit. Ce serait mieux, moins bien? Je patauge encore avec la navigation sous Terminal. Ce que j'ai trouvé sur MB marche pas tout chez moi. J'explore.
Y a pas le feu: je potasse du man comme un bourrin. Je comprends au moins 3%.

A TOUS, merci pour vos réactions, même ironiques.:cool:
 
A TATOUILLE
"dangereux" était pour blaguer. :D

par defintion une ligne est a valider par [enter]
quand tu ouvres une fenetre de terminal tu te trouves ds ton $HOME

Bloc de code:
>$ echo $HOME [enter]:D 
>$ echo $PWD [enter]:D person with disabilities ? Print Working Directory
>$ env
tu peux naviguer de maniere relative ou absolute

Bloc de code:
>$ cd $HOME/Desktop

ou
>$ echo $PWD
>$ cd Desktop
>$ echo $PWD
>$ cd ..
>$ echo $PWD
>$ cd .
>$ echo $PWD
>$ ls -laG .
>$ ls -laG $HOME