기본

  • cd - change directory 로 폴더(디렉토리)를 변경합니다. - cd /<경로명>
  • cd .. - 상위디렉토리, cd or cd ~ - 홈디렉토리
  • pwd = 현제 경로를 표시합니다.
  • ls = 조건 검색어 - ls st 파일 이름 중간에 st 를 포함한 모든 파일을 표시합니다.
  • cp = 원본복사 - cp web /bin “web”폴더를 /bin에 복사합니다.
  • mv = 원본이동 - mv web /bin “web”폴더를 /bin으로 이동합니다.
  • rm = 원복삭제 - rm web or rm -r web “web”폴더를 삭제 합니다.
  • mkdir = 폴더 생성 - mkdir web “web” 폴더를 현제 경로에 생성합니다.
  • rmdir = 폴더삭제 - rmdir web “web” 폴더를 현제 경로에서 삭제합니다.
  • touch = 파일생성 - touch web “web”의 무용량 파일을 생성 합니다.
  • grep = 파일안 내용찾기 - grep head index.php “index.php” 에서 head 가 포함된 낱말을 찾어 냅니다.
  • ln = 링크 - ln -s /bin/web/ apath main “/bin/web/” 의 해당경로를 apath main 으로 링크합니다.
  • who = 현제 접속 또는 로그인중인 모든 사용자를 찾어줍니다.
  • ps = ps(옵션) - 현제 실행중인 모든 프로세서 표시합니다.
  • kill = kill ichat - ichat 프로세서를 강제 종료 합니다.
  • find = 조건검색어 - find /root/ -name password 파일이름에 password 를 포함한 파일을 /root 폴더에서 검색합니다.
  • whereis = whereis ichat “ichat 가 있는 프로세서 경로를 표시합니다.
  • sudo - 관리자 권한으로 실행 *sudo vi /etc/php.ini root 권한으로 /etc/ 폴더에 php.ini 파일을 vi로 편집합니다.
  • vi or vim - vim 편집기
  • grep - 파일안에 내용 찾기
  • clear or cmd + k - 화면 클리어

ls

  • ls 옵션
  • -a (모든 파일 표시)
  • -d (.의 포함된 파일이아닌 .자체에 대한 정보 출력/ ls -dl)
  • -F (dir의 경우 / 추가)
  • -reverse (reverse는 출력항목을 역순 정렬, 시간 알파벳)
  • -s 파일 크기순정렬
  • ls -t 시간순 정렬
  • -h 파일크기 바이트아닌 사람이 알기 쉬운 단위로
  • -d 디렉토리 정보확인 (ls -dh)
  • ls -l /usr / ~ (/usr, root, home dir 세 디렉토리 확인)

  • ls자세히보기 정보 파일접근권한 / 하드 링크 수 / 파일 소유자의 사용자이름 / 파일을 소유한 그룹이름 / 파일 크기 / 파일 마지막 수정날짜,시간 / 파일명

  • file filename (간단한 파일 정보 출력)

  • less filename (파일내용 보기)

  • less 조작키
  • b/spacebar (페이지단위 위,아래 이동)
  • up/down (줄단위 위,아래 이동)
  • g/G (페이지 처음,끝 이동)
  • /string (/아래방향으로 입력된 문자열 찾기)
  • n (검색어 n개의 n+1번째로 하나씩 이동)
  • h (도움말)
  • q (종료)

와일드카드

  • (모든문자)
  • ? (모든 하나의 문자)
  • [string] (string이 포함된 문자)
  • [!string] (string이 포함되지 않은 문자)
  • [[:class:]] (지정된 class에 해당하는 문자)
  • class
  • :alnum: (모든 알파벳, 숫자, 문자)
  • :alpha: (모든 알파벳 문자)
  • :digit: (모든 숫자)
  • :lower: (모든 소문자)
  • :upper: (모든 대문자)

  • ex)
  • g* (g로 시작하는 모든파일)
  • g*.txt (g로 시작하는 모든 txt 파일)
  • Data??? (Data로 시작하면서 뒤에 정확히 3개의 문자만 있는 파일)
  • [abc]* (a,b,c로 시작하는 모든 파일)
  • BACKUP.[0-9][0-9][0-9] (BACKUP으로 시작하면서 뒤에 정확히 세 개의 숫자로 된 파일)
  • [[:upper:]]* (대문자로 시작하는 모든 파일)
  • [![:digit:]]* (숫자로 시작하는 모든 파일)
  • *[[:lower:]123] (파일명이 소문자로 끝나거나 1,2,3으로 끝나는 파일

파일,디렉토리 조작

  • cp (파일 및 디렉토리복사)
  • mv (파일 및 디렉토리 이동)
  • mkdir (디렉토리 생성)
  • rm (파일 및 디렉토리 삭제)
  • ln (하드 링크 또는 심볼릭 링크)

cp 옵션

  • -a (파일 및 dir뿐만 아니라 소유자 및 권한 정보와 같은 속성까지 모두 복사)
  • -i (기존 파일을 덮어쓰기 전에 확인 메시지를 보여주는 옵션, 안전을 위해 사용)
  • -r (dir과 그 안의 내용까지 복사할 때 쓰는 옵션, dir복사시 사용)
  • -u (어떤 dir에 있는 파일을 다른 dir로 복사할 때, 그 dir에는 없거나 최신 버전인 파일만을 복사하기 위해서 사용)
  • -v (복사 완료되었다는 메시지를 보여주는 옵션)

rm 옵션

  • -i (삭제하기전 확인 메시지 출력)
  • -r (하위디렉토리도 삭제)
  • -f (파일이 없더라도 실행됨, 존재하지 않는파일 무시)
  • -v (삭제확인 메시지 출력)

커맨드라인 단축키

  • clear (화면지우기)
  • history (히스토리보기 history less 치면 less로 히스토리보기가능 less단축키 사용하여 화면탐색가능)
  • ctrl-A (줄 맨 앞으로 커서 이동)
  • ctrl-E (줄 맨 뒤로 커서 이동)
  • ctrl-L ( ==clear )
  • ctrl-d ( ==delete )
  • ctrl-k (현재커서부터 해당 줄 끝까지 텍스트 지우기)
  • ctrl-u (현재커서부터 해당 줄 맨 앞 텍스트 지우기)
  • ls project (project 디렉토리를 다 치지않고 ls pro까지만 치고 tab키누르면 자동완성)

Permission

  • id – 사용자 id표시
  • chmod – 파일 모드변경
  • umask – 기본 파일 퍼미션설정
  • su – 다른 사용자로 쉘 실행
  • sudo – 다른 사용자로 명령어 실행
  • chown – 파일 소유자 변경
  • chgrp – 파일 그룹 소유자 변경
  • passwd – 사용자 비밀번호변경경

  • ls -l 출력결과의 처음 10개문자는 파일 속성을 나타낸다 -rwxr-xr-x 1/3/3/3 단위로 파일의종류/Owner/Group/Other로 구분할 수 있다.

파일의 종류

  • – – (일반파일)
  • d – (디렉토리)
  • l – (심볼릭 링크, 항상 777)
  • c – (문자 특수 파일, 터미널이나 모뎀깥이 바이트의 열로 데이터를 처리하는 디바이스를 나타냄)
  • b – (블록 특수 파일, 하드드라이브나 CD-ROM드라이브 같은 블록 단위의 데이터 처리하는 디바이스 나타냄)

퍼미션 속성

  • 속성 (파일/디렉토리)
  • r – (파일의 열기와 읽기허용 / 실행 속성이 설정되어 있으면 디렉토리의 내용물을 나열할 수 있게끔 허용)
  • w – (파일 쓰기, 잘라내기 허용, 이름변경,삭제는 안됨 파일삭제나 이름변경은 디렉토리 속성에 의해 결정된다 / 실행 속성이 설정되어 있으면 디렉토리 내의 파일들을 생성,삭제,이름변경이 가능)
  • x – (파일이 프로그램으로 처리되고 실행되도록 허용, 스크립트 언어에서 작성된 프로그램파일은 읽기 가능으로 설정되어 있어야만 실행가능 / 디렉토리에 들어올 수 있도록 허용한다 ex) cd directory )

2진법 파일모드

  • 0 —
  • 1 –x
  • 2 -w-
  • 3 -wx
  • 4 r–
  • 5 r-x
  • 6 rw-
  • 7 rwx

다른 사용자 ID와 그룹 ID로 쉘 실행

  • su -l (슈퍼유저로 변경)
  • sudo (다른 사용자가 슈퍼유저로 명령을 실행할 수 있음)

  • chown 파일 소유자와 그룹 변경
  • chown [owner][:[grout]]file
  • “username” (파일의 소유권을 현 소유자에서 “username”으로 변경)
  • “username”:users (파일의 소유권을 현 소유자에서 “username”으로 변경하고 파일 그룹 소유자를users 그룹으로 변경)
  • :admins (파일 그룹 수유자를 admins 그룹으로 변경한다. 파일 소유자는 바뀌지 않는다)
  • “username”: (파일 소유자가 현 소유자에서 “username”으로 변경되고 그룹 소유자는 “username”의 로그인 그룹으로 변경)

  • chgrp 그룹 소유권 변경
  • 예전 유닉스에서 chown명령어가 그룹 소유권이 아닌 파일 소유권만 변경할 수 있어서 그룹 소유권 변경을 위한 명령어 독립명령어가 chgrp이다 chown과 동일한 방식으로 작동함

  • passwd 패스워드변경