리눅스 명령어(+ 옵션)
들을 명령어 + 한 줄 설명으로 정리합니다.
- 각 명령어마다 추가 내용이 필요한 부분이 있으나 여기서는 명령어와 기능만 나열합니다.
- 옵션은 대표적인 옵션들만 나열되었습니다.
- 지속적으로 갱신됩니다.
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
: 홈 디렉토리 삭제