Directory

  1. pwd : print working directory

  2. cd : change directory
        ☞ / : 최상위 directory (루트 directory)          ex) cd /
        ☞ ~ : 홈 directory (/C:/Users/계정명)
        ☞ .. : 이전 directory
        ☞  . : 현재 directory

  3. mkdir : make directory

  4. rmdir : remove directory

  5. ls : 해당 directory에 있는 파일 list
        ☞ -a : 모든 파일 보기(숨김파일 포함) (all)                   ex) ls -a
        ☞ -l : 파일정보를 상세하게 보여주는 리스트(long)
        ☞ -r : 역순 정렬(reverse)
        ☞ -t : 파일 수정시간순 정렬(time)                       ex) ls -rt : 수정시간 역순정렬
        ☞ -d 폴더명 : 선택한 폴더의 정보 출력

  6. mv : directory&File 이름바꾸기    ex) mv abc abc2 [directory 이름변경],  mv abc.txt def.txt [File 이름변경]
            directory&File 이동        ex) mv abc.txt abc3 [abc.txt를 abc3 폴더로 이동]
        ☞ -i : 폴더안에 해당이름의 파일이 이미 존재할 시 한번더 확인함(interactive) 

File

  1. touch : empty 파일 만들기                                      ex) touch abc.txt
        ☞ .filename : 숨긴파일로 만들기                           ex) touch .abc.txt

  2. cp : copy&paste, 해당폴더의 directory&File 복사    ex) cp abc.txt abc2.txt [abc.txt를 복사해 abc2.txt 생성]
       ☞ -r : 디렉토리 삭제시 사용(recursive)
       ☞ -i : 폴더안에 해당이름의 파일이 이미 존재할 시 한번더 확인함(interactive) 

  3. rm : remove file
        ☞ -r : 해당 디렉토리의 모든 디렉토리/파일까지 삭제, 디렉토리 삭제시 사용(recursive)
        ☞ -i : 폴더안에 해당이름의 파일이 이미 존재할 시 한번더 확인함(interactive)
        ☞ -f : 강제시행(force)
    $ rm -rf /tmp/test
    
  4. grep : 파일 내용 찾기
    $ grep linux abc.txt
    

    → linux라는 내용을 abc.txt에서 찾아서 그 단어가 있는 행만 출력

  • 파이프라인을 사용해 앞 명령어에서 찾고자 하는 단어만 출력시킬 수 있음
    $ ls --help | grep sort
    

    → ls 명령어 도움말에서 sort라는 단어가 있는 행만 출력

5. cat : 파일 내용 출력(concatenate)                               ex) cat abc.txt
    ☞ -n : 라인수와 같이 출력

6. tail : 파일 내용을 뒤에서부터 출력
    ☞ -f : 실시간으로 로그출력 (follow)

<파일내용 열람시 단축키>
↑ : 위로 한줄
↓ : 아래로 한줄
space bar : 아래로 한페이지
b : 위로 한페이지
g : 맨 처음으로
G : 맨 끝으로
q : 열람끝내기

7. find : 파일 검색   -> find [option] [path…] [word]

(1) 현재 디렉토리에서 이름으로 파일&디렉토리 찾기
ex) find . -name *.log : 현재디렉토리(.)에서 부터 확장자가 log인 모든 파일을 찾음
ex) find / -type d-name abc : 루트디렉토리(/)에서 부터 이름이 abc인 디렉토리를 찾음

8. whereis : 실행파일, 소스, 메뉴얼 파일 위치 출력                      ex) whereis ls

사용자

  1. sudo : 슈퍼유저의 권한 사용

  2. chmod : 파일에 대한 권한 변경

(1) 권한 확인 (폴더여부(d), user, group, other 순)

$ ls -al  mydirectory

drwxr-xr-x  1 europani 197121       0  8월  6 13:23 ./
drwxr-xr-x  1 europani 197121       0  8월  6 13:23 ../
drwxr-xr-x  1 europani 197121       0  8월  6 13:23 bin/
-rwxr-xr-x  1 europani 197121       0  8월  6 13:23 note.txt

→ d: 폴더
→ rwx : user 권한 (읽기, 쓰기, 실행)
→ r-x : group 권한 (읽기, 실행)
→ r-x : other 권한 (읽기, 실행)

(2) 권한 변경
 + : 권한부여
 - : 권한해제

$ chmod ug+rw o-r myfile

→ user, group에게 myfile의 읽기, 쓰기 권한부여
→ other에게 myfile의 읽기 권한해제

(3). 8진수 권한부여
 - 4 : 읽기(r), 2 : 쓰기(w), 1 : 실행(x)

$ chmod 753 myfile

→ user : 4 + 2 + 1 = 7 -> 읽기, 쓰기, 실행 권한부여
→ group : 4 + 1 = 5 -> 읽기, 실행 권한부여
→ other : 2 + 1 = 3 -> 쓰기, 실행 권한부여

2. chown : 파일 소유자 변경                      ex) chown europani myfile

3. chgrp : 파일 그룹 변경                        ex) chgrp dev myfile

프로세스

  1. ps : 실행중인 프로세스 출력                   ex) ps -ef | grep python
    ☞ -e : 커널 프로세스를 제외한 모든 프로세스
    ☞ -f : 모든 정보 (full listing)

  2. top : 실행중인 프로세스 출력(표형태)

  3. jobs : 작업목록 출력

  4. kill : 실행중인 프로세스 종료(PID 사용)         ex) kill -9 14604
    ☞ -9 : 강제종료
    ☞ -15 : 정상종료

  5. pkill : 실행중인 프로세스 종료(프로세스명 사용)         ex) pkill ping

Shell

  1. chsh : 기본 쉘 바꾸기
    • /etc/shells 에 올라와 있는 쉘만 변경 가능
$ vi /etc/shells        # 변경 가능한 쉘 리스트 보기
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/tcsh
/bin/csh
/bin/zsh

$ echo $SHELL           # 기본쉘 확인
/bin/bash
$ which zsh             # zsh 경로확인
/bin/zsh

$ chsh -s `which zsh`   # zsh로 기본쉘 변경

File System

  1. df : 파일시스템(디스크) 용량 체크 [Disk Free]
    ☞ -h: 용량 큰 단위로 출력(Byte -> GB,TB)

  2. du : 특정 파일시스템의 사용중인 용량 체크 [Disk Used]
    ☞ -h: 용량 큰 단위로 출력(Byte -> GB,TB)

    $ du -h /data
    

기타

  1. history : 커맨드 내역확인                                          ex) history
  2. !history넘버 : 히스토리의 번호를 사용하여 이전 커맨드 사용            ex) !871
  3. man : 커맨드의 공식 메뉴얼                                   ex) man pwd
  4. help : 도움말                                                       ex) help pwd = pwd --help
  5. nano : text editor 열림
  6. clear : 화면 clear
  7. exit : 창 종료

Shell 단축키

  • Ctrl + A : 커서를 라인 맨 앞으로 이동
  • Ctrl + E : 커서를 라인 맨 뒤로 이동

  • Ctrl + W : 단어 삭제
  • Ctrl + U : 커서 이전 삭제
  • Ctrl + K : 커서 이후 삭제