Branding, UI Design Linux / 2025-05-21 / by 이주환

리눅스 기초 명령어

Linux 기본 명령어 요약

시스템 및 네트워크

hostname

  • 시스템의 호스트 이름 확인

ip a

  • IP 주소 및 네트워크 인터페이스 정보 확인

ping

네트워크 연결 확인

  • ping google.com: google.com으로 네트워크 연결을 확인합니다.
  • whoami: 현재 로그인한 사용자 이름을 출력합니다.
  • uptime: 시스템이 얼마나 오랫동안 가동되었는지 보여줍니다.
  • top: 실시간으로 시스템 리소스 사용량 (CPU, 메모리 등)을 모니터링합니다.
  • free -h: 메모리 사용량을 사람이 읽기 쉬운 형태로 보여줍니다.

파일 및 디렉토리 관리

  • ls: 디렉토리의 내용을 나열합니다.
    • ls -l: 자세한 정보 (권한, 소유자, 크기 등)를 포함하여 나열합니다.
    • ls -a: 숨김 파일을 포함하여 나열합니다.
  • cd: 디렉토리를 이동합니다.
    • cd /path/to/dir: 지정된 경로로 이동합니다.
    • cd ~: 홈 디렉토리로 이동합니다.
    • cd ..: 상위 디렉토리로 이동합니다.
  • pwd: 현재 작업 디렉토리의 전체 경로를 출력합니다.
  • mkdir: 새 디렉토리를 생성합니다.
  • rm: 파일 또는 디렉토리를 삭제합니다.
    • rm file.txt: file.txt 파일을 삭제합니다.
    • rm -r directory/: directory/ 디렉토리와 그 안의 모든 내용을 재귀적으로 삭제합니다.
  • cp: 파일을 복사합니다.
    • cp source.txt dest.txt: source.txtdest.txt로 복사합니다.
  • mv: 파일을 이동하거나 이름을 변경합니다.
  • touch: 빈 파일을 생성하거나, 기존 파일의 수정 시간을 현재 시간으로 업데이트합니다.

파일 내용 확인 및 편집

  • cat: 파일의 전체 내용을 터미널에 출력합니다.
  • less, more: 페이지 단위로 파일 내용을 볼 수 있어 큰 파일에 유용합니다.
  • head, tail: 파일의 시작 또는 끝 부분을 출력합니다.
    • head -n 10 file.txt: file.txt 파일의 상위 10줄을 출력합니다.
    • tail -n 20 file.txt: file.txt 파일의 하위 20줄을 출력합니다.
  • nano, vi, vim: 터미널 기반의 텍스트 편집기를 실행합니다.

검색 및 필터링

  • grep: 파일 내에서 특정 텍스트 패턴을 검색합니다.
    • grep "pattern" filename: filename에서 “pattern”을 검색합니다.
  • find: 파일이나 디렉토리를 검색합니다.
    • find /path -name "*.txt": /path 디렉토리에서 확장자가 .txt인 모든 파일을 찾습니다.
  • locate: 인덱스를 사용하여 파일이나 디렉토리를 빠르게 검색합니다. (사전에 데이터베이스 업데이트 필요)
  • wc: 파일의 라인, 단어, 문자 수를 계산합니다.
  • cut: 텍스트를 특정 구분자를 기준으로 자릅니다.
    • cut -d ':' -f 1 /etc/passwd: /etc/passwd 파일에서 ‘:’을 구분자로 사용하여 첫 번째 필드만 출력합니다.
  • sort, uniq: 라인을 정렬하고, uniq중복된 라인을 제거합니다.

권한 및 사용자 관리

  • chmod: 파일 또는 디렉토리의 권한을 변경합니다.
    • chmod 755 file.sh: file.sh 파일에 읽기, 쓰기, 실행 권한을 부여합니다.
  • chown: 파일 또는 디렉토리의 소유자를 변경합니다.
    • chown user:group file.txt: file.txt의 소유자를 user, 그룹을 group으로 변경합니다.
  • adduser, useradd, deluser: 사용자를 추가하거나 삭제합니다.
  • passwd: 사용자의 비밀번호를 설정하거나 변경합니다.
  • su, sudo: 다른 사용자로 전환하거나, 관리자 권한으로 명령어를 실행합니다.

프로세스 및 작업 제어

  • ps: 현재 실행 중인 프로세스를 보여줍니다.
  • kill: 프로세스를 종료합니다.
    • kill PID: 지정된 프로세스 ID (PID)를 가진 프로세스를 종료합니다.
  • jobs, fg, bg: 백그라운드에서 실행되는 작업을 제어합니다.

압축 및 백업

  • tar: 여러 파일을 하나의 아카이브 파일로 묶거나 압축합니다.
    • tar -cvf archive.tar file1 file2: file1file2archive.tar로 묶습니다.
    • tar -xvf archive.tar: archive.tar의 압축을 해제합니다.
  • gzip, gunzip: 파일을 압축하고 해제합니다 (.gz 형식).
  • zip, unzip: zip 형식으로 파일을 압축하고 해제합니다.

시스템 정보 및 설정

  • df -h: 디스크의 사용량을 사람이 읽기 쉬운 형태로 보여줍니다.
  • du -sh: 디렉토리나 파일의 용량을 요약하여 보여줍니다.
  • uname -a: 시스템 정보 (커널 버전, 운영체제 등)를 출력합니다.
  • history: 이전에 실행했던 명령어 목록을 보여줍니다.
  • alias: 명령어에 별칭을 설정하여 더 짧거나 기억하기 쉬운 이름으로 사용할 수 있게 합니다.
    • alias ll='ls -alF': ll을 입력하면 ls -alF가 실행되도록 설정합니다.

네트워크 도구

  • curl, wget: 웹에서 파일 다운로드 및 HTTP 요청을 보냅니다.
  • netstat, ss: 네트워크 연결 상태 및 포트 정보를 보여줍니다.
  • scp: 원격 서버와 파일을 안전하게 복사합니다.
    • scp file.txt user@remote:/path: 로컬의 file.txt를 원격 서버의 /path로 복사합니다.

기타 유용한 명령어

  • man: 명령어의 매뉴얼 페이지를 보여줍니다 (도움말).
  • echo: 텍스트를 터미널에 출력합니다.
  • date: 현재 날짜와 시간을 표시합니다.
  • sleep: 지정한 시간 동안 대기합니다.
  • clear: 터미널 화면을 지웁니다.

파이프 및 리디렉션

  • | (파이프): 한 명령어의 출력을 다른 명령어의 입력으로 연결합니다.
    • ls -l | grep ".txt": ls -l의 결과 중 .txt를 포함하는 라인만 필터링하여 출력합니다.
  • >, >>: 명령어의 출력을 파일로 리디렉션합니다.
    • >: 파일의 내용을 덮어씁니다.
    • >>: 파일의 내용에 추가합니다.
  • <: 파일의 내용을 명령어의 입력으로 리디렉션합니다.

스크립트 및 자동화

  • .sh 파일 실행: 쉘 스크립트 파일을 실행합니다.
    • chmod +x script.sh: 스크립트 파일에 실행 권한을 부여합니다.
    • ./script.sh: 스크립트 파일을 실행합니다.
  • cron: 정해진 시간에 작업을 자동적으로 실행하도록 예약합니다.
    • crontab -e: cron 작업을 편집합니다.

패키지 관리 (예: Ubuntu/Debian)

  • apt update: 패키지 목록을 최신 상태로 업데이트합니다.
  • apt upgrade: 설치된 패키지를 최신 버전으로 업그레이드합니다.
  • apt install <package_name>: 패키지를 설치합니다.
  • apt remove <package_name>: 패키지를 삭제합니다.
Tags:
Comments