소개글
Linux 기반의 프로그램으로 ls를 만들어보는 소스입니다...hwp파일이 같이 동봉 되있구요...
소스에 대한 분석밑 주석이 따로따로 나뉘어져 있는 리포트 입니다...
$ ls -l
합계 58180
-rwxrwxrwx 1 root cvs 81 3월 16 21:33 class.txt*
drwxrwxrwx 2 root cvs 4096 3월 25 17:24 nemo_book/
-rwxrwxrwx 1 root cvs 17063916 3월 25 17:35 nemo_book.zip*
-rwxrwxrwx 1 root cvs 86 3월 20 15:04 prof.txt*
drwxrwxrwx 3 root cvs 4096 4월 7 11:44 public_html/
-rwxrwxrwx 1 root cvs 42410452 3월 25 17:26 soft.zip*
-rwxrwxrwx 1 root cvs 80 3월 20 15:07 student.txt*
drwxrwxrwx 2 root cvs 4096 3월 17 10:42 test/
-rw-rw-r-- 1 paeksu paeksu 0 6월 15 02:04 tmp
이렇게 ls와 똑같이 나오게 하는 my_ls프로그램 입니다...
학점 A이 나온 과제입니다...
목차
1. 주제2. 팀원 :
3. 작업기간 :
4. 작업 목표
5.작업내용
6.소스
7.문제점
본문내용
4. 작업 목표$ ls -l
합계 58180
-rwxrwxrwx 1 root cvs 81 3월 16 21:33 class.txt*
drwxrwxrwx 2 root cvs 4096 3월 25 17:24 nemo_book/
-rwxrwxrwx 1 root cvs 17063916 3월 25 17:35 nemo_book.zip*
-rwxrwxrwx 1 root cvs 86 3월 20 15:04 prof.txt*
drwxrwxrwx 3 root cvs 4096 4월 7 11:44 public_html/
-rwxrwxrwx 1 root cvs 42410452 3월 25 17:26 soft.zip*
-rwxrwxrwx 1 root cvs 80 3월 20 15:07 student.txt*
drwxrwxrwx 2 root cvs 4096 3월 17 10:42 test/
-rw-rw-r-- 1 paeksu paeksu 0 6월 15 02:04 tmp
5.작업내용
소스분석
Grant 함수는 파일에 대한 st_mode와 각 모드를 비교해 문자로 변경하여 권한을 str배열에 입력을 하여 알아보기 쉽게 해준다.
Show 함수는 파일에 대한 정보들을 사용자가 알아볼 수 있게 화면에 뿌려주는 역할을 하는 함수이다. passwd, group, tm 구조체를 선언하여서 파일에 대한 정보를 출력한다. 또, Grant 함수에서 권한을 입력한 str배열을 같이 출력하여서 사용자에게 정보를 준다.
Main : DIR 구조체를 이용해서 디렉토리에 접근한다. 접근한 디렉토리에서 opendir을 이용해서 현재 디렉토리를 오픈한다. 오픈한 현재 디렉토리를 읽어서 dirp구조체에 정보를 저장한다. dirp를 이용해 file의 이름을 출력을 한다. 현재의 디렉토리를 NULL일때까지 읽다가 NULL이면 종료한다. 이것이 일반 ls의 일반적 알고리즘이다. 만약 ls -l처럼 옵션이 붙을 때의 알고리즘은 약간 다르다. 옵션이 붙을때는 argv를 검사해서 문자‘-’와 같으면 그뒤 -l옵션을 확인한다. -l옵션이 맞으면 Show와 Grant 함수를 이용해서 출력을 한다.
참고 자료
없음압축파일 내 파일목록
my_ls만들기.c
my_ls만들기.hwp
my_ls만들기.hwp
이 자료와 함께 구매한 자료
- [공학기술]유닉스 명령어 만들기 (ls, rm, cp, mv) 18페이지
- 스포츠 심리학 동기 이론에 관하여 13페이지
- 한글맞춤법오류찾기( TV프로그램 ) 10페이지
- 정서법 틀린글자 맞춤법 12페이지
- 설계 중심의 개발방법론 프레임워크 10페이지