- 형식
명령어 | 옵션 | 보조옵션 | 대상 |
pwd | |||
clear | |||
cd | directory | ||
mkdir | directory | ||
ls | -l |
pwd
- 내 현재 위치를 절대 경로로 출력
cd
- 내가 현재 위치한 디렉터리를 이동(변경)
- 대상
directory : 해당 디렉터리로 이동
. : 현재 디렉토리로 이동
.. : 상위 디렉토리
생략 : 명령어를 입력한 사용자의 홈 디렉터리(~)로 이동
~계정명 : 해당 사용자의 홈 디렉터리로 이동 (root 전용)
ls
- 대상이 파일인 경우와 디렉터리인 경우 각각 출력되는 정보가 다르다
> 파일 : 파일 자체의 정보를 확인
디렉터리 : 디렉터리 내부의 목록을 출력
생략 : 현재 위치한 디렉터리 내부의 목록을 출력
-옵션
-l : 자세한 정보를 출력
-a : 숨겨진 개체들까지 출력
-d : 대상이 디렉터리인 경우 대상 자체의 정보를 출력(file 대상으로는 적용 X)
-R : 대상이 디렉터리인 경우 하위 디렉터리가 있다며 그 내부까지 출력
* -l 옵션 정보
-rw-r--r--. 1 root root 511 10월 14 2020 /etc/inittab
- : 대상 개체의 형식(- : 일반 file, d : directory , l : symbolic link file 등 )
rw-r--r-- : 허가권
1 : link 개수
root : 소유권
511 : 크기(byte단위, directory의 경우 정확한 크기 출력 X)
10월 14 2020 : 최종 수정된 날짜와 시간
/etc/inittab : 대상의 경로와 이름
cp
- copy : 복사 + 붙여 넣기
- 기본적으로 파일만 복사가 가능
> 디렉터리의 복사는 별도의 옵션이 필요
- 원본 파일과 같은 이름으로 복사뿐만 아니라 원본 파일과 다른 이름으로 복사도 가능
> 이름을 바꾸면서 복사가 가능 ( 이때 원본은 하나만 입력; 1:1 복사만 가능 )
- 형식
cp [옵션] 원본 [원본] ... [원본] 복사할 위치[+이름]
- 옵션
-r : 디렉터리를 복사할 때 사용 ( 디렉터리 안의 파일까지 복사 )
-i : 중복된 파일일 경우 실행 여부를 물어봄. ( 기본값으로 포함된 옵션 )
-f : 강제로 복사
mv
- move; 잘라내기 + 붙여 넣기
- 파일/디렉터리 전부 이동 가능
- 원본 파일과 같은 이름으로 이동뿐만 아니라 원본 파일과 다른 이름으로 이동도 가능
> 이름을 바꾸면서 이동이 가능( 이때 원본은 하나만 입력; 1:1 이동만 가능 )
- 이름 바꾸기 명령어로 사용 가능
-형식
mv [옵션] 원본 [원본] ... [원본] 이동할 위치[+이름]
mkdir
- make directory
- 경로가 없으면 디렉터리 생성 불가능( 옵션 사용하면 가능 )
* 옵션
-p : 대상의 경로가 없는 경우 함께 생성
rmdir
- remove directory
- 디렉터리 내부에 다른 파일/디렉터리가 있다면 삭제 불가능
> 빈 디렉터리만 삭제 가능
* 옵션
-p : 대상 디렉터리는 삭제 후 상위 디렉터리가 비어있다면 함께 삭제
rm
- remove
- 기본적으로 파일 삭제 가능( 디렉터리는 옵션을 이용하여 삭제 )
* 옵션
-f : 물어보지 않고 삭제
-r : 디렉터리도 삭제
alias
- 임의의 키워드에 명령어 [+옵션] 등록
해당 키워드로 등록된 명령을 대체해서 사용
- 형식
alias : 등록된 키워드 확인
alias 키워드='명령어 [옵션]' : 키워드 등록
ex) [root@Linux-01 ~]# alias c='clear’
[root@Linux-01 ~]# unalias c
cat
- 형식
cat : 입력한 내용을 그대로 화면에 출력 ( 일반적으로 사용 X )
cat 파일명 : 파일의 내용을 출력
> : overwrite 덮어쓰기
>> : append 추가로 쓰기
# 자동으로 파일이 만들어지는 것을 확인 가능하다.
# cat 명령어를 사용해서 파일의 내용을 채우기도 가능하다.
touch
- 대상이 없으면 빈 파일 생성
- 대상이 있으면 최종 수정된 날짜와 시간 변경
head
- 파일의 첫 줄부터 10줄 출력
*옵션
-숫자 : 숫자만큼의 줄 출력
tail
- 파일의 마지막 줄부터 10줄10 출력
*옵션
-숫자 : 숫자만큼의 줄 출력
more
- 출력되는 내용이 너무 많을 때 화면 높이에 맞춰서 내용을 나누어 출력
- 동작 후 추가 입력 키
enter : 한 줄 넘어가기
spacebar: 한 화면 넘어가기
q : more 중간에 종료
- 지나간 내용을 다시 볼 수 없다.
- 디렉터리 대상으로 사용 X
- 일반적으로 | 기호를 사용하여 다른 명령어와 함께 사용
# ll 출력 결과물을 more 명령어로 출력하겠다.
‘|’ 기준으로 왼쪽은 만들고자 하는 결괏값에 해당하고 오른쪽은 결과물을 꾸며줄 수 있는 서식을 넣는다.
less
- more와 동일한 기능 + 지나간 내용을 다시 볼 수 있다.
- 동작 후 추가 입력 키
enter : 한 줄 넘어가기 ( = j, 아래 방향키 )
k : 한 줄 돌아가기 ( = 위 방향키 )
spacebar: 한 화면 넘어가기 ( = page down )
page up : 한 화면 돌아가기
g : 문서의 첫 줄로 이동
G : 문서의 마지막 줄로 이동
q : 종료
- 일반적으로 | 기호를 사용하여 다른 명령어와 함께 사용
nl
- 출력 내용에 줄 번호 붙여주는 명령
- 일반적으로 | 기호를 사용하여 다른 명령어와 함께 사용
wc
- 파일의 내용이 몇 줄, 몇 단어, 몇 글자인지 출력
* 옵션
-l : 몇 줄인 지 출력( 줄은 enter를 기준으로 구분 )
-w : 몇 단어인지 출력( 단어는 enter와 spacebar로 구분 )
-c : 몇 글자인지 출력 ( 공백 문자와 각 줄의 마지막에 있는 안 보이는 마침표도 한 글자로 취급 )
cal
- 형식
cal : 장치에 설정된 날짜를 기준으로 하여 현재 월의 달력을 출력
cal 숫자 : 숫자를 연도로 사용하여 해당 연도 전체의 달력을 출력
cal 숫자 1 숫자 2: 숫자 2를 연도로 숫자 1을 월로 사용하여 해당 년월의 달력을 출력
date
- 형식
date : 현재 장치에 설정된 날짜와 시간을 출력
date mmddHHMMyyyy : yyyy년 mm월 dd일 HH시 MM분으로 날짜와 시 간 변경
rdate
- 인터넷에 존재하는 Time 서버(서버(시간 값을 제공해주는 서버)의 날짜와 시간을 출력
- 형식
rdate [옵션] <Time서버 주소>
find
- 검색
- 형식
find 범위 [범위] ... [범위] 옵션 값 [옵션] [값] ... [옵션] [값]
* 옵션을 검색할 내용으로 사용
* 옵션
- name : 이름으로 검색
- type : 개체 형식으로 검색 ( d: directory, f: file 등 )
- newer : 기준이 되는 대상보다 늦게 수정된 개체 검색 ex.( find . -newer test )
- exec : 일반적으로 마지막 옵션으로 사용
검색 결과물들을 대상으로 특정 명령어를 적용
# root 소유자의 특수권한 setuid를 불러온다. 에러 발생 시 쓰레기통(/dev/null)에 버리는 명령어
man
- 명령어 or 파일에 대한 자세한 설명(매뉴얼)을 확인
- 동작 후 추가 입력 키
enter : 한 줄 넘어가기 ( = j, 아래방향키 )
k : 한 줄 돌아가기 ( = 위방향키 )
spacebar: 한 화면 넘어가기 ( = page down )
page up : 한 화면 돌아가기
g : 문서의 첫 줄로 이동
G : 문서의 마지막 줄로 이동
/Patten : Patten 검색( 검색 후 n 눌러서 다음 찾기 )
q : 종료
시스템 종료
- shutdown -h now
- poweroff
- halt
- init 0 (추천)
시스템 재부팅
- shutdown -r now
- reboot
- init 6 (추천)
※ 기호
- . : 현재 디렉터리
- .. : 상위 디렉터리
- ~ : 모든 것
- > : 기호 왼쪽에 입력한 명령어가 동작하여 나오는 출력 내용을 기호 오른쪽에 저장
- (> : 덮어쓰기. >> : 내용추가)
- | : 파이프(pipe), shift + \
CLI의 단점인 '한 줄에 명령어 하나'를 보완하는 기호
하나의 대상에 여러 명령어를 적용
- 사용 방식
A | B : B(A)
ls -l /etc/ | more : more ( ls -l /etc )