функция stat.

Модератор: Fastman

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Pal
мл. сержант
Сообщения: 97
Зарегистрирован: 2008-07-04 14:40:14

функция stat.

Непрочитанное сообщение Pal » 2008-07-30 12:14:31

Здравствуйте, я довольно далёк от программирования, прошу вашей помощи.
Продемонстрируйте пожалуйста работу функции stat с использованием time_t.
Что то вроде берёт аргумент(путь к файлу) и выводит её время последнего изменения.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: функция stat.

Непрочитанное сообщение hizel » 2008-07-30 13:24:18

Код: Выделить всё

hizel@nightwatch:~/cxx$ cat teststat.c
#include <sys/stat.h>
#include <time.h>
#include <stdio.h>

char *filename="teststat";
struct stat st;

int main(int argc,char *argv[]){
        int ret;
        ret = stat(filename,&st);
        printf("%s last modified:%s\n",filename,ctime(&st.st_mtime));
        return ret;
}

Код: Выделить всё

hizel@nightwatch:~/cxx$ gcc -o teststat teststat.c

Код: Выделить всё

hizel@nightwatch:~/cxx$ ./teststat
teststat last modified:Wed Jul 30 14:23:25 2008
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
hizel
дядя поня
Сообщения: 9031
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: функция stat.

Непрочитанное сообщение hizel » 2008-07-30 13:35:28

и с аргументов в коммандной строке, но без защиты от дурака\хакера

Код: Выделить всё

hizel@nightwatch:~/cxx$ cat teststat.c
#include <sys/stat.h>
#include <time.h>
#include <stdio.h>

struct stat st;

int main(int argc,char *argv[]){
        int ret;
        if(argc != 2){
                printf("need one argument\n");
        }else{
                ret = stat(argv[1],&st);
                if(ret == 0){
                        printf("%s last modified:%s\n",argv[1],ctime(&st.st_mtime));
                }else{
                        printf("error stat :(\n");
                }
        }
        return 0;
}

Код: Выделить всё

hizel@nightwatch:~/cxx$ gcc -o teststat teststat.c

Код: Выделить всё

hizel@nightwatch:~/cxx$ ./teststat teststat.c
teststat.c last modified:Wed Jul 30 14:33:24 2008

Код: Выделить всё

hizel@nightwatch:~/cxx$ ./teststat none
error stat :(
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Pal
мл. сержант
Сообщения: 97
Зарегистрирован: 2008-07-04 14:40:14

Re: функция stat.

Непрочитанное сообщение Pal » 2008-07-30 13:48:25

Большое спасибо.