728x90
반응형

1. find 명령어
 A. 파일을 찾을 때 사용하는 명령어
 B. # find [경로] [파일이름] 순으로 입력

 

2. find 명령어 사용하기
 A. $ find . –name sum
  i. 현재 디렉토리에서 sum이란 이름을 가진 파일 및 디렉토리 찾기
 B. $ find . –name sum ls
  i. 현재 디렉토리에서 sum이란 이름을 가진 파일 및 디렉토리 찾아서 파일 권한까지 보여줌

 

3. find 명령어로 다른 명령어 병합 실행
 A. $ find . –name ‘m*’ exec ls –l {} \;
  i. m으로 시작하는 파일 및 디렉토리들을 찾아서 권한까지 보여주는 리스트 출력

 

4. 대화식 명령어 수행
 A. $ find . –name m\* -ok rm {} \;
  i. m으로 시작하는 파일 및 디렉토리를 삭제하되, 삭제여부를 물어봄

 

5. 추가 옵션
 A. –type f : 보통 파일 찾기
 B. –type d : 디렉토리
 C. –size +n : n보다 용량이 큰 파일 찾기
 D. –size –n : n보다 용량이 작은 파일 찾기
 E. –size n : n과 용량이 같은 파일 찾기
 F. –mtime +x : x 시점보다 갱신이 오래된 파일 찾기
 G. –mtime –x : x 시점보다 갱신이 오래되지 않은 파일 찾기
 H. –perm [권한] : 권한으로 찾기
 I. –user [사용자ID] : 사용자ID로 찾기
 J. –o : 조건 추가 입력
 K. 실습 결과
  i. 현재 디렉토리에서 디렉토리만 찾아서 리스트로 출력하고, 현재 디렉토리에서 파일만 찾아서 리스트로 출력하기


  ii. 파일 용량이 1Mbytes가 넘는 파일만 찾아서 파일 리스트 출력하기

  iii. 현 시점에서 1분보다 더 오래된 시점에 갱신한 파일 및 디렉토리를 출력하고, 1분 이내로 갱신한 파일 및 디렉토리 출력

 
6. 셸과 find
 A. $ find . –name ‘c*’
  i. 현재 디렉토리를 기준으로 c로 시작하는 모든 파일 및 디렉토리를 찾아냄

 

7. find 사용 예시
 A. $ find . –name ‘s*’ –type f –size +2 –exec ls –l {}\;
  i. 현재 디렉토리에서 s로 시작하고, 용량이 2bytes 이상인 파일 및 디렉토리를 찾아서 리스트로 보여줌
 B. $ find . –perm 644 –mtime +4 –print
  i. 현재 디렉토리에서 권한이 644이고, 갱신된지 4일 이상 경과된 파일을 찾아서 화면에 프린트함
 C. $ find . -name sjm -o –name jms
  i. 현재 디렉토리에서 이름이 sjm 혹은 jms인 파일 혹은 디렉토리를 모두 찾음
 D. $ find / -name 'security' -print 2> errfile
  i. 루트 디렉토리에서 이름이 security인 파일 및 디렉토리 경로를 프린트하고, 에러 발생시 errfile 이란 이름을 가진 파일을 생성 및 저장시킴
 E. 예시1 : 현재 디렉토리에서 권한이 755이고, 최근 업데이트 한 지 1일 이상 된 디렉토리 리스트를 출력
  i. $ find . –perm 755 –type d –mtime +1 –ls
 F. 예시2 : 현재 디렉토리에서 용량이 2Mbytes 이상인 파일을 찾아서 삭제하기
  i. $ find . –size +2048 –exec rm {}\;

 

8. grep 명령어
 A. 파일 내부 내용에서 특정 패턴이 들어있는 줄을 찾아냄

 

9. grep 명령어의 규칙
 A. . : 한 문자
 B. * : 한 글자 이상의 모든 문자
 C. [aA] : a 혹은 A
 D. [a-f] : a부터 f까지 안에 속하는 한 글자
 E. ^a : a로 시작하는 패턴이 존재하는 줄
 F. z$ : z로 끝나는 패턴이 존재하는 줄

 

10. grep 명령어 사용 예시
 A. ps –ef 명령어로 프로세스 기록 출력 시, 검정색 사각형 내용이 들어있는 줄만 출력


 B. 설치된 소프트웨어 내역 중에 대소문자 구분 없이 java라는 단어가 들어 있는 줄을 모두 출력
  i. lslpp : 서버에 현재 설치된 소프트웨어 목록을 보여주는 명령어


 C. /etc/passwd 파일 안에 t로 시작하는 줄을 모두 찾아서 출력하기


 D. /etc/passwd 파일 안에 t로 시작하는 패턴이 존재하는 줄의 개수를 출력

 


 E. /etc/passwd 파일 안에 t로 시작하지 않는 패턴이 있는 줄을 모두 찾아서 출력하기

 F. Sjm1 파일에서 A로 시작하는 줄을 모두 출력하기
  i. grep ‘^A’ Sjm1
 G. Sjm1 파일에서 1로 시작하는 줄을 모두 출력하기
  i. grep ‘5$’ Sjm1
 H. Sjm1 파일에서 A 혹은 B로 시작하는 줄을 모두 출력하기
  i. grep ‘^[AB]’ Sjm1
 I. Sjm1 파일에서 A로 시작해서 B로 끝나는 줄을 모두 출력하기
  i. grep ‘^A.*B$’ Sjm1

 

11. grep 옵션
 A. –v : 반대로 찾기
 B. –c, -l, -n : 개수 출력
 C. –i : 대소문자 구분 없이 출력
 D. –w : 단어로 찾기

 

12. 변형된 grep 명령어
 A. fgrep : 패턴 내 텍스트가 들어있는 줄 찾기
  i. fgrep ‘HW’ out : 문자 HW가 들어 있는 줄을 모두 출력
 B. egrep : 2개 이상의 패턴을 정의하여, 1개라도 들어 있다면 출력
  i. fgrep ‘HW|USB’ out : 문자 HW 또는 USB가 들어 있는 줄을 모두 출력

 

13. sort 명령어
 A. 알파벳순, 숫자 순으로 정렬
 B. sort –d : 사전 순서대로 정렬
 C. sort –r : 역순으로 정렬

 

14. sort 명령어 사용 예
 A. sort [filename]
  i. 파일 속 내용을 알파벳순으로 정렬
 B. cat [filename]|sort +0.1
  i. 두 번째 글자 기준으로 알파벳순 정렬
 C. cat [filename]|sort –t. –n +1
  i. . 기호 뒷자리 숫자가 작은 것부터 우선 정렬

 

15. head, tail 명령어
 A. head : 파일 내용의 앞부분을 보여줌
 B. tail : 파일 내용의 뒷부분을 보여줌
  i. tail –f [filename] : 파일 내용 끝부분 10줄을 보여줌
   1. 예시
    A. tail –f passwd


   2. tail -20 passwd|grep ‘^sj’


    A. passwd 파일 내용의 끝부분 20줄 중에 sj로 시작하는 줄을 모두 출력함
   3. cat passwd |grep sj |tail -20


    A. passwd 파일 내용 중에 sj로 시작하는 줄을 찾아내고, 그 중에 끝부분 20줄을 출력함

 

16. tn 명령어 (tn : telnet의 약자)
 A. 다른 서버 호스트로 로그인할 때 사용하는 명령어
 B. tn [서버 호스트명]
 C. 예시

 

 
17. ftp
 A. 다른 서버로 파일을 전송할 때 사용하는 기능
 B. ftp [서버 호스트명]


18. tar
 A. 백업 및 저장할 때 사용하는 명령어
 B. tar [옵션] [생성할 백업파일명]
 C. 옵션 종류
  i. -c : 만들기
  ii. -t : 파일 리스트 확인
  iii. -v : 처리과정을 보여줌
  iv. -f : 파일 이름 정의
  v. -r : 확장
  vi. -x : 백업파일 풀기

 

19. 확인문제
 A. 모든 디렉토리에서 smit으로 시작하는 파일 찾는 명령어
  i. find / -name ‘smit*’
 B. ps –ef |grep –w root|grep –w netscape 명령어의 의미
  i. root와 netscape가 둘 다 들어있는 프로세스 리스트 보기

 

20. xargs

 A. 그룹으로 묶어서 명령어 수행

 B. 예시

  i. $ cat oldfilelist | xargs -t rm

   1. oldfilelist에 있는 파일들을 모두 삭제하고, 에러 발생시, 에러 표시

  ii. $ ls | xargs -t -I {} mv {} {}.old

   1. 파일 리스트에 출력된 기존 파일들을 [기존 파일명].old 형식으로 이름을 모두 바꿈

  iii. $ ls |grep old | xargs -t rm

   1. old란 이름을 가진 파일들의 리스트에 속한 파일들을 모두 제거

 

21. xargs, find, grep

 A. $ find . -type f -mtime +30 | xargs -t rm

  i. 30일 이상 된 파일을 모두 삭제

 B. $ find . -type f | xargs -t grep -l Hello

  ii. 파일 이름에 Hello가 들어가 있는 파일을 찾음

 

22. alias

 A. $HOME/.kshrc 파일에 alias [사용자가 원하는 단축명령어]=[원본 명령어] 구문을 입력하면, 사용자가 원하는 단축명령어를 생성할 수 있음

  i. 예시 : 비슷한 이름 형식을 가진 파일 3개를 만들고, $HOME/.kshrc 파일에 alias 구문을 넣어서 단축명령어를 만들고 실행한 결과

 

23. which, whereis, whence
 A. 명령어가 실행되는 위치 경로를 보여줌
 B. which [명령어], whereis [명령어], whence [명령어] 형태
 C. 예시

 
24. file
 A. 파일 정보를 확인할 때 사용하는 명령어
 B. file [파일명 혹은 디렉토리명]
 C. 예시

 
25. diff
 A. 두 파일 내용의 차이점을 찾아내는 명령어
 B. diff [옵션] [파일명1] [파일명2]

26. 압축 및 압축 해제
 A. compress : 압축파일을 만들 때 사용하는 명령어
 B. uncompress : 압축 파일의 압축을 풀어내는 명령어
 C. 예시 : 2Mbytes 파일 생성 후, compress 명령어로 파일 압축. uncompress 명령어로 파일 압축 해제

 

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,