Как получить список файлов, к которым обращается команда в терминале

strace -ff -e trace=file my_command 2>&1 | perl -ne 's/^[^"]+"(([^\\"]|\\[\\"nt])*)".*/$1/ && print'


Команда strace позволяет отслеживать системные вызовы, выполняемые указанной командой. В данном случае, командой my_command.

Опция -ff указывает на создание отдельного файла трассировки для каждого дочернего процесса. Опция -e trace=file задает отслеживание только системных вызовов, связанных с файлами.

После выполнения команды strace, вывод перенаправляется на stdin команду perl, которая с помощью регулярного выражения извлекает и выводит список файлов, к которым обращалась команда.

Альтернативой может быть использование команды ltrace, которая отслеживает библиотечные вызовы.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *