Je voulais utiliser DTrace pour voir "quels appels système sont effectués par mon script shell".Echec de l'exécution de script.sh: erreur inconnue
J'ai fait un script shell très simple, shell.sh
, et lui a donné les droits d'exécution:
#!/bin/bash
grep 1 <<< 123
I cd
« d dans son répertoire, et a couru ce simple script DTrace:
sudo dtrace -n 'syscall:::entry
/pid == $target/
{
@[probefunc] = count();
}' -c ./trace-me.sh
I obtenir cette sortie d'erreur:
dtrace: failed to execute ./trace-me.sh: unknown error
Que s'est-il passé ici ? J'ai couru csrutil enable --without dtrace
. Le script DTrace fonctionne bien si je supprime l'argument -c
(et remplace $target
par un pid).
Est-ce juste un autre Mac? Je cours macOS Sierra 10.12.5 Beta.
Jetez un oeil à cette réponse, il pourrait peut-être résoudre votre problème: https://stackoverflow.com/a/36760408/499581 –