Sto cercando di identificare quando un particolare processo è in esecuzione, basato sui suoi argomenti, su Mac OS X. Possono esserci diversi processi in esecuzione con lo stesso nome, ma solo uno avrà gli argomenti che sto cercando. I processi non sono di proprietà dello stesso utente che eseguirà il mio codice. Non avranno modificato il loro argv in alcun modo.In che modo ps mostra l'argv per tutti i processi su Mac OS X?
Il comando "ps" mostra esattamente le informazioni di cui ho bisogno. Ma preferirei di gran lunga non dover generare 'ps' e analizzare la sua produzione.
Inizialmente ho provato la soluzione da this question, utilizzando sysctl, ma risulta che funziona solo per i processi che possiedi; vedi my other question per maggiori informazioni.
Quindi, come ottiene le informazioni sull'argup per i processi di proprietà di altri utenti?
Così è; Non l'avevo notato. Questo risolve almeno il mistero; Grazie. – DNS
Anche la chiave sysctl KERN_PROCARGS2 è elencata come "__APPLE_API_UNSTABLE" quindi, anche se è possibile utilizzare sysctl, è soggetta a cambiamenti nel capriccio di Apple. – ctpenrose