Разница между функциями stat, lstat и fstat заключается в том, как они получают информацию об атрибутах файла: www.opennet.ru asu.cs.nstu.ru
- stat возвращает сведения о файле, на имя которого указывает параметр filename. asu.cs.nstu.ru Имя файла должно быть полным или строиться относительно текущей директории для процесса, совершившего вызов. asu.cs.nstu.ru Если имя файла относится к файлу типа «связь», то читается информация об атрибутах файла, на который указывает символическая связь. asu.cs.nstu.ru
- lstat идентична stat, но если имя файла относится к файлу типа «связь», то читается информация о самом файле типа «связь». asu.cs.nstu.ru
- fstat идентична stat, только файл задаётся не именем, а файловым дескриптором (файл к этому моменту должен быть открыт). asu.cs.nstu.ru
Таким образом, stat возвращает информацию о файле, lstat — о ссылке, а fstat — об открытом файле. www.opennet.ru docs.oracle.com