전체 카테고리 336

getutxent 함수 예제

사용자 관련 정보 검색함수 getutxent()에 대해서 오늘 우연히 사용하게 되어 이에 대한 기록을 남겨놓고 감. utmp => who 명령어에서 사용함. wtmp => last 명령어에서 사용함 함수를 사용할때 추가해야할 해더파일 #include getutxent함수와 관련된 다른 함수들 struct utmpx *getutxent(void); void setutxent(void); void endutxent(void); int utmpxname(const char *file); => file - 교체할 파일이름이 매개변수로 넘어간다. getutxent 함수는 /var/adm/utmpx 파일에서 로그인 정보를 순차적으로 읽어들임. setutxent 함수는 /var/adm/utmpx 파일의 오프셋을 파일..

엔지니어 2012.08.13

strtok 함수 예제

이름 strtok, strtok_r - 문자열에서 토큰들을 뽑아낸다. 사용법 #include char *strtok(char *s, const char *delim); char *strtok_r(char *s, const char *delim, char **ptrptr); 예제를 보면 아래처럼 쉽게 테스트할 수 있다. ============================== #include #include #include int main() { char *temp = "/home/test/HISTORY/history/test_file"; char *aa, buf[256]; strncpy(buf, temp, sizeof(buf)); printf("before strtok : %s\n", buf); aa = ..

엔지니어 2012.08.06

특수문자 파일명 디렉토리명 삭제 (inode이용)

오늘 파일을 하나 지워야 하는데 파일명이 \ 여서 지울라다 보니까 아래와 같은 방법으로 지웠다. % ls -al total 996 drwxr-xr-x 4 jeon jeon 1024 Jul 31 14:02 ./ drwxr-xr-x 54 jeon jeon 2048 May 3 18:30 ../ -rw-r--r-- 1 jeon jeon 21975 Jun 22 13:34 .dependencies drwxr-xr-x 6 jeon jeon 1024 Jul 31 12:30 .svn/ -rw-r--r-- 1 jeon jeon 1843 Jan 30 2012 Makefile -rw-r--r-- 1 jeon jeon 359 Jan 30 2012 \ 아래와 같이 i 옵션을 추가해서 inode값을 확인한다. % ls -ali t..

엔지니어 2012.07.31

readv 함수 예제

read 함수와 매우 동일한 함수다. 다만 다중 버퍼를 사용할 수 있다는 것만 차이점이다. NAME readv, writev - read or write data into multiple buffers SYNOPSIS #include ssize_t readv(int fd, const struct iovec *iov, int iovcnt); 리턴값 : 성공시 전송한 바이트 수, 실패시 -1 리턴 인자값 : - fd : 데이터 전송의 목적지를 나타내는 소켓의 파일 디스크립터를 전달한다. 반드시 소켓에만 제한되는 함수가 아니다. read, write 함수처럼 파일이나 콘솔을 입, 출력 대상으로 할 수도 있다. - vector : 일반적으로 iovec 구조체 배열의 이름을 인자로 전달하는데, iovec 구조체에..

엔지니어 2012.07.30

[LINUX 명령어] sadf 명령어

이럴수가 asdf 마구 치다가 우연히 찾은 명령어다. 아직 자세하게 뭔지는 모르기에 man page 가져다 붙여두고 좀 봐야겠다. SADF(1) Linux User's Manual SADF(1) NAME sadf - Display data collected by sar in multiple formats. SYNOPSIS sadf [ -d | -D | -H | -p | -x ] [ -t ] [ -V ] [ -P { cpu | ALL } ] [ -s [ hh:mm:ss ] ] [ -e [ hh:mm:ss ] ] [ -- sar_options... ] [ interval [ count ] ] [ datafile ] DESCRIPTION The sadf command is used for displaying ..

엔지니어 2012.07.26

poll 함수 예제

select는 특정 이벤트가 발생하면 running을 하지만 poll은 계속해서 주기적으로 돌면서 이벤트를 체크한다. int poll(struct pollfd *fds, nfds_t nfds, int timeout); 1인자값 : 이벤트 등록 변수 2인자값 : 체크할 pollfd의 개수 3인자값 : time out 시간 만약에 poll(0, 0, 1000); 이렇게 하면 sleep(1); 과 같이 1초 delay를 줄 수 있다. 출처: http://forum.falinux.com/zbxe/?document_srl=405838 위의 페이지에 따르면 POLL함수는 확인하고 싶은 여러가지 이벤트를 미리 등록해놓고 그 이벤트들이 발생했는지 확인할 수 있는 편리한 방법을 제공한다. POLL 함수의 PHASE는 5..

엔지니어 2012.07.26

사용가능한 클라이언트 포트번호 범위 찾기 (LINUX)

Server측에서 poll 함수를 가지고 주기적으로 돌고 있고 Client측에서 포트번호를 자동적으로 증가시켜가면서 붙는데 도대체 이 포트번호의 범위가 어딘지 모르겠다. 그래서 찾아봤다. sysctl이라고 시스템 커널과 관련하여 다양한 설정값을 확인할 수 있다. (루트권한) # sysctl -a |grep port sunrpc.max_resvport = 1023 sunrpc.min_resvport = 665 dev.parport.default.spintime = 500 dev.parport.default.timeslice = 200 net.ipv4.ip_local_port_range = 32768 61000 fs.nfs.nlm_tcpport = 0 fs.nfs.nlm_udpport = 0 따라서 요렇게 ..

엔지니어 2012.07.24

stderr를 stdout으로 출력하는 법

stadard error가 프로세스 수행하면 막 뜨는데 이걸 파일이나 어디 다른데다가 기록하게 할 수 없는지 방법을 찾아야했는데 이런게 있다. 괜찮네.. 간단하고.. std 관련 설명 [a] stdin - Use to get input (keyboard) i.e. data going into a program. [b] stdout - Use to write information (screen) [c] stderr - Use to write error message (screen) I/O streams 숫자의 의미 The Unix / Linux standard I/O streams with numbers: Handle Name Description 0 stdin Standard input 1 stdout ..

엔지니어 2012.07.24

GCC 컴파일러 에러 메세지 리스트(Error Message List)

이 문서는 GCC Version 2.7.2를 기준으로 하여 이 컴파일러가 출력하는 에러 [error]와 경고 [warning] 메시지를 한국어로 번역하고, 그 메시지를 발생할 수 있는 간단한 예제를 보이며, 간단한 해결책을 제시합니다. GCC Error (Warning) Message List Copyright © 1999 Seong-Kook Cin Seong-Kook Cin Jang-Chon Dong 21-2 Sun-Chon City 540-190 South KOREA Before reading this 이 문서는 GCC Version 2.7.2를 기준으로 하여 이 컴파일러가 출력하는 에러 [error]와 경고 [warning] 메시지를 한국어로 번역하고, 그 메시지를 발생할 수 있는 간단한 예제를 보..

엔지니어 2012.07.24