기본명령어

명령어 설명
pwd 현재 위치 확인
cd 디렉토리 이동
ls 디렉토리 안 내용 출력
  ls -a : 숨긴 파일 모두 출력
  ls -d : 디렉터리 자체의 정보 출력
  ls -i : 첫번째 행에 inode 번호를 출력 (inode: 파일, 디렉토리에 관한 정보를 가지는 숫자)
  ls -F : 파일 종류를 표시 (*: 실행 파일, /: 디렉터리, @: 심볼릭 링크 파일)
  ls -L : 심볼릭 링크의 경우 원본 파일의 정보 출력
  ls -R : 하위 디렉터리의 목록 출력
mkdir 디렉터리 생성
  mkdir -p 폴더/하위폴더 : 하위 디렉터리를 계층적으로 생성할 때 중간 단계의 디렉터리를 자동 생성해 줌
rmdir 디렉터리 삭제
  rmdir -p 폴더명 : 지정한 디렉터리를 삭제할 때 부모 디렉터리가 빈 경우 같이 삭제

파일 관련 명령어

명령어 설명
cat 파일의 내용 출력
  cat -n : 행 번호를 붙여서 출력
more 파일의 내용을 화면 단위로 출력
  more +행번호 : 출력을 시작할 행 번호를 지정
less 파일의 내용을 화면 단위로 출력
  j : 아래 방향키
  k : 위 방향 키
  space bar, Ctrl + f : 다음 페이지로 이동
  Ctrl + b : 이전 페이지로 이동
  /문자열 : 해당 문자열을 찾아줌
  q : 종료
head 파일의 첫 번째 행부터 n 행까지 출력
  head -숫자: 출력할 행 수를 지정
tail 파일 뒷부분의 n행을 출력
  tail +숫자 : 지정한 행부터 끝까지 출력
  tail -숫자 : 뒷부분의 n행부터 끝까지 출력
  tail -f : 파일 출력을 종료하지 않고 주기적으로 계속 출력
cp 파일이나 디렉터리 복사
  cp -i : 파일을 덮어쓸지 물어본다
  cp -r : 디렉터리를 복사할 때 지정
rm rm : 파일이나 디렉터리를 삭제
  rm -i : 삭제 여부를 묻는다
ln ln : 파일 링크 생성
  ln -s : 심볼릭 링크 파일 생성
touch 빈 파일 생성
greb (파일 내 검색) 지정한 패턴이 포함된 행 찾기
  greb [옵션][패턴] [파일] → 패턴과 파일명 헷갈리지 않기
  greb -i : 대소문자 구분 없이 검색
  greb -l : 지정한 패턴이 포함된 파일명 검색
  greb -n : 행 번호 출력
find 지정한 경로에서 검색 조건에 맞는 파일 찾기
  find [경로][검색 조건] [동작]
  find -name filename : 파일명으로 검색
  find -type 파일 종류
  find -user 사용자 : 지정한 사용자의 소유 파일 검색
  find -perm 권한 : 지정한 권한과 일치하는 파일 검색
  find [검색 조건] -exec 명령{}\ : 검색된 파일에 명령을 실행
  find [검색 조건] -ok 명령{}\
  find [검색 조건] -print
  find [검색 조건] -ls
whereis 지정된 경로에서 명령의 바이너리 파일이나 메뉴얼 파일의 위치를 찾음
  whereis -b : 바이너리 파일만 검색
  whereis -m : 메뉴얼 파일만 검색
  whereis -s : 소스 파일만 검색
which 명령 파일의 위치를 찾아 그 경로를 추적

문서 편집 관련 명령어

vi : 지정한 파일 편집

구분 명령 설명
명령모드 q, q! 종료, 강제 종료
  w 파일 저장
  wq 저장 후 종료
  wq! 강제 저장 후 종료
  ZZ ,shift + zz 작업한 내용을 저장하고 vi 를 종료
파일 명령 :r 파일 지정한 파일을 읽어 들여 현재 커서 위치에 삽입
  :e 지정한 파일로 전환 - 저장 완료 후 가능
  :n vi 시작 시 여러 파일을 지정했을 경우 다음 파일로 전환
셀 명령 실행 :! 셀명령 vi 작업을 잠시 중단하고 셀 명령을 실행. 다시 vi 로 돌아오려면 ENTER 누르기
  :sh vi 에서 빠져 나와 셀 명령을 실행. 다시 vi 로 돌아오려면 exit 를 입력
환경 설정 명령 :set nu 파일 내용의 각 행에 행 번호를 표시
  :set nonu 행 번호 표시를 취소
  :set list 눈에 보이지 않는 특수 문자를 표시
  :set nolist 특수 문자 표시를 취소
  :set showmode 현재 모드 표시
  :set noshowmode 현재 모드 표시 취소
  :set set으로 설정한 모든 vi 환경 설정 값을 출력
  :set all 모든 vi 환경 변수와 현재 값 출력
입력 모드 전환 i,a, o 현재 커서 위치, 커서 다음,커서 아래행에 글자 입력
  I,A, O 현재 행 처음에, 행 마지막에, 위 행에 글자 입력
커서 이동 hjkl 왼 아 위 오
  w, b 다음 단어, 이전 단어 첫 문자로 이동
  CTRL + f ,CTRL + b 한 페이지 아래로, 위로 커서 이동
  G 마지막 행으로 커서 이동
  [n] G n 행으로 커서 이동
  :행 번호 지정한 행으로 커서 이동
내용 수정 s 현재 커서 글자를 지우고 입력 모드로 전환
  r 현재 커서 글자 지우고 한 글자 입력 후 명령 모드
  cw 현재 커서 위치부터 현재 단어의 끝까지 수정
  cc 현재 커서가 위치한 행의 내용을 모두 수정
  C 현재 커서 위치부터 행의 끝까지 수정
내용 삭제 x , X 현재 커서 위치의 한 글자, 이전 한 글자 삭제
  dw, db 현재 커서 위치의 단어, 이전 단어 삭제
  dd 현재 커서 위치의 행 삭제
  [n]dd 현재 커서 위치의 아래 n 행을 삭제
  d^ 현재 행에서 현재 커서 위치 이전 행 삭제
  d$,D 현재 행에서 현재 커서 위치 이후 행 삭제
명령 취소 u 이전 명령을 취소
  U 해당 행에서 한 모든 명령을 취소
  e! 마지막으로 저장한 내용 이후의 것을 모두 취소
  CTRL + r 이전 취소한 명령을 취소
복사,붙여넣기 yy 현재 커서 위치의 행을 복사
  [y] 현재 커서에서 아래의 n 행을 복사
  p, P 현재 커서 위치 아래 행에, 위 행에 붙여 넣기
  yw,yb 현재 커서 이후 단어, 이전 단어 복사
검색 /문자열 문자열을 아래 방향으로 검색
  ?문자열 문자열을 위 방향으로 검색
  n, N 다음, 이전 문자열 검색
바꾸기 :s/문자열1/문자열2 현재 커서 위치 행에서 첫 번째 나오는 문자열1을 문자열2로 변경
  :%s/문자열1/문자열2 파일 전체에서 모든 문자열1을 문자열2로 변경

서비스 관리

구분 명령 설명
서비스 systemctl 서비스 제어