Может быть, вы могли бы использовать функцию system () для вызова некоторых команд оболочки?
В bash вы просто позвоните:
stat -c %i filename
Показывает номер инода файла. Вы можете сравнить два файла таким образом, и если их inode идентичны, это означает, что они являются жесткими ссылками. Следующий звонок:
stat -c %N filename
отобразит имя файла и, если это символическая ссылка, также напечатает имя файла, на который он ссылается. Он печатает только одно имя, даже если файл, на который он указывает, имеет жесткие ссылки, поэтому проверка символической ссылки потребует сравнения номеров инодов для 2-го файла и файла, на который ссылаются символические ссылки, чтобы убедиться в этом.
Вы можете перенаправить вывод статистики в текстовый файл, а затем проанализировать файл в вашей программе.