3 분 소요

자주쓰는 Linux 명령어

  • man : manual의 약자. 명령어들이 어떤게 있는지 조회하는 명령어. 명령어의 상세 정보에 대해서 알려줌
    • man ls : ls 명령어의 사용방법들을 알려줌.\
    • "tool" --help : 명령어도 사용법을 알려주나, man 보다는 자세하지 않음.
  • pwd : 현재 directory의 위치
  • cd : directory로 이동
    • cd ~ : home directory로 이동함 ( home/사용자 )
      • 그냥 cd 를 쳐도 동일하게 home directory로 감
    • cd - : 바로 이전의 directory로 이동
  • ls : 현재 디렉토리에 있는 파일 목록 표시.
    • ls -al : 상세 내용에 대해서 표시.
  • cat "filename" : file에 들어있는 내용을 출력.
  • head "filename" : file의 시작부터 일부만 bash에 출력.
  • tail "filename" : file의 끝부터 위쪽으로 일부의 내용만 bash에 출력.
  • more or less "filename" : file의 위쪽부터 일부분만 표시. enter로 다음줄로 넘김.
  • grep : 각 파일에서 패턴에 일치하는 행들을 찾음.
    • grep -i "hello world" menu.c main.c : menu.c, main.c에서 ‘hello world’를 찾음.
    • ls -al | grep "kern.log" : ls -al의 결과물에서 “kern.log”라는 text를 찾는 명령어, 이런식으로 찾아보는 경우가 많다고함.
    • grep "startup packages confugre" dkpg.log | tail : grep의 결과물에서 tail tool을 사용해 console에 출력.
    • cat dpkg.log | grep "2022-01-07 15:39:32" : cat 명령어의 결과물에서 “2022-01-07 15:39:32” text를 찾음.
  • find : 파일의 위치를 찾고 후속 명령을 취할 수 있는 Tool
    • find 명령어는 기본적으로 현재 디렉토리를 기준으로 모든 하위 디렉토리를 탐색하게 됨.
    • find /etc -name "Filename" -print : /etc directory에서 파일명이 “Filename”인 것을 모두 검색해라.
      • FileName에는 wildcard가 적용가능함. *.conf 라고하면 .conf로 끝나는 파일을 모두 찾음.
  • file "filename" : filename의 속성을 알 수 있음.
    • ex ) file filelist.gz : filelist.gz: gzip compressed data. was “filelist”. …
  • gzip : 파일을 압축해주는 명령어. .gz 파일로 압축된다.
    • gzip filelist : filelist.gz 파일로 압축되어 있는 것을 확인할 수 있음.
  • gunzip : .gz 파일을 uncompressed 해주는 명령어
  • mv : 파일 name을 변경하거나, directory 위치로 이동시켜주는 명령어
    • mv filenameA filenameB : filenameA를 filenameB로 변경
    • mv filenameA directoryA : filenameA를 directoryA로 이동
  • tar : tar는 여러개의 파일을 하나의 파일로 연결해주는 명령어이다. 압축의 개념은 아니고 있는 그대로 쭉 연결해주는 방식이다. 보통 tar 파일이라고 하는 것은 파일을 여러개로 연결해둔 파일이라고 생각하면 된다.
    • tar -czf test.tar.gz filelist.gz file foo : from “filelist.gz, file, foo” to “test.tar.gz”
    • tar -zxf test.tar.gz : 합쳐진 파일을 분리
  • rm : 파일 제거 명령어
    • rm -rf test1 : test1 경로의 모든 파일을 다 제거함
    • rm 명령어는 윈도우와는 다르게 복구 불가.
  • date : 현재 시간 출력
    • cloud server 이용시 사용될 수 있음.
    • 시스템 시간 변경도 가능.
    • Formatting 하는 기능도 있으니 참고
  • cal : 달력 출력
    • cal -d "년-월" : 해당 년-월의 달력 출력
  • history : 이전에 사용된 명령어들 확인 가능
    • history !number : history-number의 명령어 실행
  • !! : 직전의 command 실행
  • exit : shell 종료
  • echo : console에 출력
    • echo "message" : console에 message 출력
    • echo $pwd : pwd 환경변수 출력
      • $PATH 등 환경 변수 모두 가능함.
  • env : 모든 환경변수 목록 출력
  • which : 명령어 & tool 의 위치 확인 가능
    • which ls, which file 이런것도 됨.
  • touch : 파일 생성 command.
    • touch a.txt : a.txt 파일 생성
  • ln : link 생성을 위한 명령어. 별도의 명령어가 없다면 hardlink를 default로 생성한다.
    • ln a.txt apple : a.txt 파일의 inode를 가리키는 apple hardlink 생성.
    • ln -s a.txt banana : a.txt와 연결된 banana ( symbollink ) 를 생성.
  • stat : ls 이외에도 파일의 정보를 볼 수 있는 명령어. ls 보다 더 자세한 내용을 확인할 수 있다. ( Device, Block, IO Block 등등)
    • stat filename : filename의 상세 내용 출력
    • Modify : 파일 내부의 Content 변경시간
    • Change : Inode의 변경시간
  • chmod : 파일 권한 부여. 두가지 방식으로 파일에 권한을 부여할 수 있다.
    • chmod 777 filename : filename에 777 ( read, group, other ) 모두 read, write, execute 권한을 부여하라는 뜻
    • chmod go+rx filename : 기존 filename의 권한에서 group, other 쪽에 read, execute 권한을 부여.
      • u = user, g = group, o = others, a = all;
        • = add permission, - = remove permission
      • r = read, w = write , x = execute
  • adduser : 사용자 혹은 그룹을 추가하는 명령어
  • deluser : 사용자 혹은 그룹을 제거하는 명령어
  • su : shell 상에서 로그인 계정을 변경하는 명령어
  • ps : 프로세스 리스트 확인
    • ps -f : PPID, CPU Usage(C), STIME ( Started time ) 등 더많은 Column을 출력해서 보여줌.
    • ps -e : 리눅스에서 실행되는 모든 프로세스에 대해서 listing
    • ps -ef --forest : 부모 - 자식 관계를 Tree 형태로 출력
  • echo $$ : 현재 Process ID 출력
  • echo $? : 직전의 프로세스 종료코드 출력.
  • kill : Process에 Signal을 보내는 명령어
    • kill -l : signal list 출력
    • kill -9 "pid" or kill -KILL "pid" : pid에 해당되는 프로세스 종료.
  • fg : 포어그라운드 프로세스로 전환
    • fg "pid" : pid 에 해당되는 process foreground로 전환.
  • bg : 백그라운드 프로세스로 전환
  • wc : 사용자 입력이나 파일에 대한 word count 통계를 출력.
    • wc < a.txt : a.txt파일의 개행, 단어, byte 개수를 화면에 출력해줌.

태그:

카테고리:

업데이트:

댓글남기기