Recommanded Free YOUTUBE Lecture: <% selectedImage[1] %>

stime(2)

1장. stime(2)

차례
1.1절. 사용법
1.2절. 설명
1.3절. 반환값
1.4절. 에러
1.5절. 예제

시간을 설정한다.


1.1절. 사용법

#include <time.h>

int stime(time_t *t);
		


1.2절. 설명

stime 은 시스템의 시간(:12)과 날짜를 설정한다. 지정하는 시간 5는 00:00:00 GMT January 1, 1970 이후로 부터 계산되는 초이다. stime() 함수는 단지 root:::유저(:12) 만이 사용할수 있다.


1.3절. 반환값

성공할경우 0을 실패했을경우에는 -1을 반환하며, 적당한 errno 값을 설정한다.


1.4절. 에러

EPERM

호출 프로세스(:12)의 유저가 슈퍼 사용자가 아니다.


1.5절. 예제

#include <time.h>

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>

int main(int argc, char **argv)
{
    // 사용법 : ./stime "2002 2 16 9 9 9" 
    //                   년  월 일 시 분 초
    char buff[6][5];
    struct tm tm_ptr;
    time_t m_time;

    sscanf(argv[1], "%s %s %s %s %s %s", buff[0], buff[1],
                                         buff[2], buff[3],
                                         buff[4], buff[5]);

    tm_ptr.tm_year  = atoi(buff[0]) - 1900;
    tm_ptr.tm_mon   = atoi(buff[1]) - 1;
    tm_ptr.tm_mday  = atoi(buff[2]);
    tm_ptr.tm_hour  = atoi(buff[3]);
    tm_ptr.tm_min   = atoi(buff[4]);
    tm_ptr.tm_sec   = atoi(buff[5]);
    tm_ptr.tm_isdst = 0;

    m_time = mktime(&tm_ptr);
    stime(&m_time);

}
		
위의 프로그램에 시간을 주고 실행시키면 시스템 시간이 변경된다.
[root@coco test]# ./stime "2002 11 15 19 45 12"