在 macOS 上使用命令行跟踪可执行文件的所有打开情况

在 macOS 上使用命令行跟踪可执行文件的所有打开情况

(相关如何找到程序打开/读取/写入的所有文件?但不幸的是,这些答案已经过时了。似乎安全性和多核问题一直在困扰着 macos 迭代的解决方案。)

假设我对 macos 命令行程序产生了怀疑,或者我想了解clang( gcc) 在执行其工作时读取的内容。因此,我想运行

$ ftrace "gcc a.c" &> all-files-accessed-by-gcc-compiling-a.c

稍后我可以grep使用文件名,例如,它是否访问了我的任何文件.ssh

这容易吗?某种 strace 或 ktrace 或 dtruss 调用?

相关内容