리눅스 명령어(+ 옵션)들을 명령어 + 한 줄 설명으로 정리합니다.
- 각 명령어마다 추가 내용이 필요한 부분이 있으나 여기서는 명령어와 기능만 나열합니다.
- 옵션은 대표적인 옵션들만 나열되었습니다.
- 지속적으로 갱신됩니다.
history: 터미널에서 실행했던 명령어의 기록들을 보여줌
history -[옵션]
-c: 기록 모두 삭제
-d [번호]: 특정 줄 기록 삭제
clear: 터미널에서 수행했던 명령어, 실행 결과 삭제
명령 --help: 해당 명령에 대한 설명, 옵션+설명 표시
명령 --version: 해당 명령의 버전 표시
vi: vim 에디터 실행
date: 리눅스 시스템의 현재 시각과 날짜 출력timedatectl: 리눅스 시스템의 시간 정보에 대해 하드웨어 시계, 소프트웨어 시계, URC, Timezone, 시간 동기화 등에 대한 정보 표시who: 시스템에 로그인 한 모든 사용자의 계정, 터미널, 로그인 시각 등에 대한 정보 출력users: 시스템에 접속한 모든 유저들의 이름을 출력whoami: 현재 접속 중인 계정 이름을 출력su: 로그인 계정 변경uname: 리눅스 시스템에 대한 정보 확인
uname -[옵션]
-a: 시스템의 모든 정보 확인
-m: 시스템이 사용중인 하드웨어 정보 확인
-n: 호스트 네임 확인
-r: 운영체제 릴리즈 확인
-s: 운영체제 이름 확인
-v: 운영체제 버전 출시 일자 확인
hostname: 현재 시스템의 호스트 네임 확인
arch: 시스템이 설치된 컴퓨터의 CPU 정보 확인
env: 시스템의 환경변수 확인
echo [출력할 문자열]: 문자열 표준 출력
echo -e옵션을 사용하면이스케이프 문자를 전달할 수 있습니다. 이때 반드시""를 붙여서 이스케이프 문자임을 표시해야합니다.
이스케이프 문자 기능 "\a" 비프음 "\b" 백스페이스 "\c" 마지막 줄 바꿈 문자 생략 "\f" 폼 피드 형식 출력(= 프린터 용지 변경 효과) "\n" 줄 바꿈 문자 출력 "\r" 다음 행의 처음으로 커서 이동(캐리지 리턴) "\t" 수평 탭 정렬 "\v" 수직 탭 정렬 "\\" 역슬래시 또는 원화 표시 출력 "\nnn" ASCII 코드 8진수 문자(nnn) 출력
which: 명령어 위치(디렉토리) 확인
ls: 디렉토리와 파일 확인
ls -[옵션] [경로]
-F: 해당 경로 위치의 디렉토리와 파일을 보여줍니다. 이때 옵션-F는 실행파일, 디렉토리, 심볼릭 링크 파일을 표시
이때 파일명 뒤의*은 실행 파일,/은 디렉토리,@은 심볼릭 링크를 나타냅니다.
-R: 하위 디렉토리의 리스트도 표시
-a: 숨김 파일까지 표시
-n: 호스트 네임 표시
-l: 파일의 상세 정보 표시
pwd: 현재 위치한 디렉토리 경로 표시
cd [경로]: 지정한 위치로 이동. cd만 입력하면 사용중인 계정의 홈 디렉토리(~)로 이동
dir: ls와 동일한 기능. 기존 MS-DOS에서 사용하던 명령어를 리눅스에서 사용하도록한 령
vdir: ls -l과 동일한 기능. 상기한 내용과 동일
mkdir: 디렉토리 생성
mkdir -p [디렉토리]
-p옵션은 디렉토리 생성 시 중간 디렉토리가 없다면 중간 디렉토리를 생성
ex)mkdir -p ./a/aa명령 수행시 a디렉토리가 없으면 생성
mkdir 1 2 3처럼 명령어를 작성하면 1과 2와 3이라는 디렉토리를 생성
rmdir: 디렉토리 삭제
rmdir -[옵션] [디렉토리]
-p: 중간 계층(또는 부모)디렉토리가 삭제 후 빈 디렉토리로 남는다면 해당 중간 계층 디렉토리도 함께 삭제
-r: 비어있지 않은 디렉토리를 강제로 삭제
touch: 빈 파일 생성
touch -[옵션] [파일명]
touch는 파일명이 없는 경우에는 새로운 빈 파일을 생성합니다. 만약 같은 이름의 파일명이 존재하는 경우 지정한 옵션의 정보로 기존 파일의 정보를 수정합니다.
-a: 최근 접근 시간 변경
-c: 파일명이 존재하지 않아도 새로 만들지 않음
-m: 최근 수정 시간 변경
-t: 시간 변경[[CC]YY]MMDDhhmm[.ss] (=[[세기]년]월일시분[.초])
cp 파일 또는 디렉토리 복사
cp -[옵션] [파일 또는 디렉토리1] [파일 또는 디렉토리2]
cp명령은 옵션과 두 개의 인자를 어떤 식으로 구성(파일 파일, 파일 디렉토리 등)하냐에 따라서 다른 결과를 보여줍니다.
-a: 원본 파일의 속성과 링크 정보를 그대로 복사
-b: 원본의 복사본 생성
-f: 강제 복사. 복사하려는 파일 이름이 이미 존재하는 경우에 강제 복사
-i: 복사하려는 파일 이름이 존재하는 경우 물어보는 프롬프트 표시
-r: 디렉토리의 하위 내용들을 전부 복사
-s: 심볼릭 링크 생성
find: 파일 검색
find [경로] [조건 옵션] [동작 옵션]
조건 옵션
조건 옵션 기능 -empty 빈 파일 찾기 -name 지정한 파일 찾기
와일드 카드 *, ?, [] 사용 가능 -> 작은 따옴표''로 와일드 카드 구분 필수-group 지정한 그룹 소유의 파일 찾기 -size 지정한 파일 크기 -size n으로 파일 찾기
n: n값, +n: n보다 큰 값, -n: n보다 작은 값-newer 지정한 파일보다 더 최근에 생성된 파일 찾기 -user 지정한 사용자 소유의 파일 찾기 -type 지정한 타입의 파일 찾기
b: 블록 디바이스, d: 디렉토리, f: 파일, l: 심볼릭 링크동작 옵션
동작 옵션 기능 찾은 파일들을 출력 (default) -prune 하위 디렉토리는 찾지 않음 -exec [명령어] {} \; 파일을 찾고 명령 수행. 공백 구분 필수 -ok [명령어] {} \; -exec과 동일하나 명령 실행 전에 한 번 물어보는 프롬프트 출력 -ls 결과를 긴 목록으로 표시
cat: 파일 내용 연속적 출력
-n: 파일 내용에 행 번호 붙여서 출력
more: 파일 내용을 화면 단위로 출력
+행 번호: 지정한 행 번호부터 출력 시작
grep: 파일 내에서 특정 문자열 검색
grep -[옵션] [찾을 문자열 또는 패턴] [파일명]
-c: 찾을 문자열이 위치한 행의 총 개수 출력
-i: 대소문자 구분 없이 출력
-l: 패턴을 포함하는 파일 이름 출력
-n: 찾을 문자열의 행 번호 출력
-r: 하위 경로까지 모두 검색해서 출력
-v: 찾으려는 문자열이 없는 행 출력
-w: 패턴을 하나의 단어로 취급해서 검색
whereis: 명령어 위치 검색. 명령의 바이너리 파일만이 아닌 메뉴얼, 소스의 정보도 함께 출력
which: 명령어 위치 검색. 바이너리 파일의 위치만을 출력. PATH 환경 변수에 지정된 경로만 따라서 검색
mv: 파일 또는 디렉토리 이동. 또는 파일명, 디렉토리명 변경
mv [원본 파일 또는 디렉토리] [이동할 파일 또는 디렉토리]
rm: 파일 삭제
rm -[옵션] [파일 또는 디렉토리]
-i: 삭제하기 전에 물어보는 프롬프트 출력
-r: 디렉토리 지정시 삭제하기 위한 옵션 (비어있지 않은 디렉토리 강제 삭제)
file: 파일의 종류를 출력(디렉토리인지 파일인지)
groups: 현재 사용자의 소속 그룹을 출력. 사용자명을 전달하면 해당 사용자의 그룹 출력
chmod: 파일 접근 권한 변경
접근 권한은 추후 다른 포스트를 작성하고 따로 달아 놓겠습니다.
umask: 리눅스 시스템의 기본 접근 권한 확인/변경
-tail: 파일의 내용을 마지막 행부터 10번째 행까지만 출력
shutdown: 리눅스 시스템 종료
shutdown [옵션] [시간] [메세지]
-c: 이전의 shutdown 명령 취소
-f: 빠른 재시작
-h: 종료 후halt상태
-k: 종료가 아닌 메세지만 전달
-r: 종료 후 재시작-r`: 종료 후 재시작
halt: 시스템 강제 종료 (= shutdown -h now)
reboot: 리눅스 시스템 재부팅(= shutdown -r)
useradd: 사용자 계정 추가
useradd [옵션] [계정 이름]
-c: 계정 이름 들의 부가 설정 지정
-d: 홈 디렉토리 지정
-e: 유효기간 지정
-f: 계정의 유효 일자 지정(ex.-f-10: 10일 동안 유효)
-g: 사용자 계정의 로그인 기본 그룹 GID 지정
-o: 사용자 계정의 UID 중복 허용
-p: 사용자 계정 패스워드 지정
-s: 사용자 계정 기본 셸 지정
-u: 사용자 계정 UID 지정
passwd: 사용자 계정 암호 설정
passwd [옵션] [계정 이름]
-d: 계정의 비밀번호 삭제
-l: 암호 잠금
-u: 암호 잠금 해제
usermod: 사용자 계정 정보 수정
usermod [옵션] [계정 이름]
-c: 사용자 이름 등의 정보 수정
-d: 홈 디렉토리 수정
-e: 계정 만료일 수정
-f: 계정 비활성화 일자 수정
-g: 로그인 기본그룹 GID 수정
-l: 계정 이름 변경
-o:계정 UID 중복 허용
-s: 기본 셸 수정
-u: UID 수정
chage: 사용자 계정의 암호 기간 설정/변경
chage [옵션] [계정 이름]
-d: 마지막 암호 변경 일 출력
-E: 계정 사용 종료일 출력
-I: 암호 유효기간이 지난 후 계정이 비활성화 되는 일 수 (대문자 i)
-l: 암호 만기에 대한 정보 출력 (소문자 L)
-m: 암호를 변경할 수 있는 최소 일 수(0은 항시)
-M: 마지막 변경 이후 암호 유효일 설정
-W: 암호 만료기간 전에 메세지 출력 설정
-1: 암호 만료일을 설정하지 않거나 값 해제
userdel: 사용자 계정 삭제
userdel [옵션] [계정 이름]
-f: 현재 사용중 계정 강제 삭제
-r: 홈 디렉토리 삭제