오경석의 개발노트

Linux_Bash Shell 명령어 모음 본문

소프트웨어, 운영체제/Linux

Linux_Bash Shell 명령어 모음

OHSAYU 2023. 6. 11. 18:20
  • cd : 디렉토리 변경(이동)
  • ls : 디렉토리(폴더 및 파일) 목록
  • .. : 상위 디렉토리 이동
  • mkdir : 새로운 디렉토리 생성
  • source ~/.bashrc : 환경변수 적용
  • whoami : 로그인한 사용자 ID 출력
  • passwd : 로그인한 사용자 ID의 암호 변경
  • pwd : 현재 디렉토리 위치
  • 와일드 카드(*는 임의 문자열, ?는 문자 하나)
  • cat : 파일 보기
  • head/tail : head는 파일 시작부분, tail은 끝 부분 출력
  • more : 파일 보기(화면이 넘어갈 경우, 넘어가기 직전까지 출력)
  • rm : 파일 및 폴더 삭제(주로 사용하는 명령어 형태 : rm -rf, r 옵션 : 하위 디렉토리를 포함한 모든 파일 삭제, f 옵션 : 강제로 파일이나 디렉토리 삭제)
  • man : manual, man rm을 입력하면 메뉴얼 출력
  • env : 모든 환경 변수와 그에 따른 모든 값 출력
  • printenv : 모든 환경 변수와 그에 따른 모든 값 출력
  • history : 이전에 사용했던 명령어 출력

 

 

 

 

 

 

 

 

 

 

 

파이프(pipe) : 두 프로세스 사이에서 한 프로세스의 출력 스트림이 또 다른 프로세스의 입력 스트림으로 사용

 -  ls | grep files.txt

 - ls 명령어를 통한 출력 내용이 grep 명령의 입력 스트림으로 들어감

 - grep files.txt는 grep 명령의 입력 스트림을 검색해서 files.txt가 들어 있는 입력 내용만 출력

 - 따라서 ls 명령으로 해당 디렉토리/파일 중에 files.txt 파일이 있는지를 출력

 

 

grep : 검색 명령

 - grep [-option][pattern][file or directory name]

<option>

    - i : 영문의 대소문자를 구별하지 않는다.

    - v : pattern을 포함하지 않는 라인을 출력

    - n : 검색 결과의 각 행의 선두에 행 번호를 넣는다(first line is 1)

    - l : 파일명만 출력

    - c : 패턴과 일치하는 라인의 개수만 출력

    - r : 하위 디렉토리까지 검색

<example>

    - grep python files.txt : files.txt라는 파일에서 python이라는 문구가 들어간 모든 행을 출력

    - grep -n python files.txt : files.txt라는 파일에서 python이라는 문구가 들어간 모든 행을 라인까지 출력

    - grep -r python foldername : foldername이라는 폴더 내의 모든 파일 중 python이라는 문구가 들어간 행을 출력

    - grep -i python files.txt : files.txt라는 파일에서 python이라는 문구를 대,소문자 구분 없이 검색해서 출력

    - grep -E "go | java | python" files.txt : files.txt라는 파일에서 go, java, python이 들어간 모든 행을 출력

 

 

ps : 프로세스 상태 확인

 - ps [option(s)]

<option>

    - a : 시스템을 사용하는 모든 사용자의 프로세스 출력

    - u : 프로세스 소유자에 대한 상세 정보 출력

    - l : 프로세스 관련 상세 정보 출력

    - x : 터미널에 로그인한 후 실행한 프로세스가 아닌 프로세스들도 출력. 주로 데몬(daemon, 악마) 프로세스까지 확인하는 용도.

    - e : 해당 프로세스와 관련된 환경 변수 정보도 함께 출력

    - f : 프로세스 간 관계 정보도 출력

<출력 항목>

    - USER : 프로세스를 실행한 사용자 ID

    - PID : 프로세스 ID

    - %CPU : 마지막 1분 동안 프로세스가 사용한 CPU 시간의 백분율

    - %MEM : 마지막 1분 동안 프로세스가 사용한 메모리 백분율 

    - VSZ : 프로세스가 사용하는 가상 메모리 크기

    - RSS : 프로세스가 사용하는 실제 메모리 크기 

    - TTY : 프로세스와 연결된 터미널 포트

    - STAT : 프로세스 상태

    - START : 프로세스가 시작된 시간

    - TIME : 현재까지 사용된 CPU 시간(분:초)

    - COMMAND : 명령어

Comments