본문 바로가기

IT

[Linux] 우분투 기본 명령어

우분투 기본 명령어

 에 대해 한번 알아보는 시간을 갖도록 하겠습니다.

여기저기서 참고하며 중복이 되지 않도록 정리했어요.

여기 포스트만 보셔도 살짝은 다르지만 전체적으로 비슷비슷하니

리눅스마스터 2급 준비하시는 분들은 어느 정도 도움이 될 거 같아요.

 

 

1. man ( manual )

각 명령어들의 도움말을 상세하게 알고 싶을 때 사용

- ( man Is ) 라고 명령어를 검색 시 Is에 대한 상세 설명을 보여준다.

- ( man cd ) 라고 명령어를 입력 시 cd에 대한 상세 설명을 보여준다.

 

2. ls ( list ) + 옵션 + 파일명

현재 디렉터리의 내용을 보여준다.

- ( ls -l ) : 디렉터리 및 파일 리스트를 권한 정보를 포함하여 상세 출력

- ( ls -a ) : 디렉토리 및 파일 리스트의 숨겨진 정보들까지 모두 출력

- ( ls -la ) : 권한 정보와 숨겨진 정보들 모두 상세히 출력


-i : 파일의 아이 노드(inode) 번호를 출력
-h : 파일의 크기를 쉬운 단위로 표시(k: 킬로바이트, m: 메가바이트)
-l : 파일의 다양한 정보를 함께 출력(소유자 정보, 권한 정보, 크기, 날짜)
-m : 파일을 쉼표로 구분하여 가로로 출력
-s kb : 단위의 파일 크기를 출력
-t : 파일을 최근에 생성된 시간순으로 출력
-f : 파일의 형태와 함께 출력한다('*' : tlfgodvkdlf, '@' : 심볼릭 링크, '/' : 디렉터리)
-r : 서브 디렉터리의 내용을 포함하여 출력(즉 하위 디렉터리 내용을 모두 출력)
-s : 파일을 크기순으로 출력
--help : 도움말 출력

 

3. pwd ( print working directory )

현재 작업 중인 디렉터리를 확인할 때 사용하는 명령어다.(절대 경로)

- desktop이란 디렉터리에서 입력하면, ~/desktop 이라고 보여준다.

 

4. cd ( change directory )

해당 디렉터리 경로로 이동, 작업할 디렉터리를 바꿀 때 사용한다.

- smile 디렉터리 경로로 이동 : ( cd /smlies/smile ) 라고 입력하면 된다. (경로는 다를 수가 있어요. 예시일 뿐입니다.) 

- smile 디렉터리로 바꾸고 싶음 :  ( cd smile ) 이라고 입력하면 된다.

 

- ( cd ) : 홈 디렉터리로 이동
- ( cd ~ ), ( cd  ~/ ) 홈 디렉터리로 이동
- ( cd ~smile ) smile의 홈 디렉토리로 이동
- ( cd ~/path/path2 ) 홈 디렉토리 아래 path/paht2로 이동
- ( cd - ) 바로 앞에 작업한 디렉토리로 이동
- ( cd directory ) 지정한 directory로 옮겨진다
- ( cd / ) root directory로 옮겨진다.
- ( cd .. )현재 작업 directory의 부모 directory로 옮겨진다.

 

5. mkdir ( make directory ) + 옵션 + 파일명

새로운 디렉터리를 만드는 명령어이다.

- smlie 디렉터리를 만들고 싶으면 ( mkdir smile )라고 입력하면 된다.

 

6. find와 locate

특정 파일을 찾을 때 이 두 가지 명령어를 모두 사용해도 된다.

ex) find [검색경로] -name [파일명]

 

7. cp ( copy ) + 옵션 + 원본 파일명 + 목적 파일명 / 디렉터리명

파일 복사 ( 디렉터리 내부까지 복사하기 위해 -r 을 붙여주면 된다)

- ( cp smile sad ) 라고 입력하면, smile 파일의 사본을 sad란 이름으로 생성한다. smile 파일은 그대로 있다.

 

-i : 파일 복사 시 동일 파일명이 있을 시에 사용자에게 덮어쓸 것인지를 물어봄
-f : 동일 파일명 발생 시에도 모두 강제적으로 복사함
-p : 원본 파일의 시간 및 소유 권한 보존
-r : 포함된 자식 디렉터리까지 모두 복사

 

8. mv ( move ) + 옵션 + 파일명

파일 이름을 변경 or 다른 디렉터리로 옮길 때 사용

- ( mv smile sad ) 라고 입력하면 smile 파일의 이름을 sad로 바꿔준다.

- ( mv smile ~/desktop )라고 입력하면, smile 파일을 desktop 디렉터리로 옮겨준다.

 

9. more + -ncdflspu +줄번호 + 파일 이름(들)

파일의 내용을 한 번에 한 화면씩 보여준다.

-n : 여기서 n은 숫자를 의미하며, 숫자는 출력 윈도우의 행수를 지정한다.
-c : 위에서부터 한 행씩 지운 후 한 행씩 출력한다. 보통은 화면 전체를 지운 후 각 행을 출력하기 시작한다. 특정한 터미널을 위해 사용
-d : 스페이스나 q 키를 누르라는 프롬프트를 출력
-f : 화명의 행이 아닌 논리적인 행 수를 계산한다. 보통은 긴 칼럼의 행은 화면에서 행바꿈을 하여 새로운 행으로 계산된다. -f 옵션을 사용하면 이러한 행은 계산하지 않는다.
-s : 여러 개의 빈 공백행은 하나로 취급한다.
-p : 스크롤하지 않는다. 대신 화면을 지우고 출력한다.
-u : 밑줄 치기를 금지한다.


- /expr expression 검색

- return 한 줄만 스크롤
- d 빈 페이지만 뒤로 이동
- space, Ctrl-d 한 페이지만 뒤로 이동(다음 페이지)
- b 한 페이지 앞으로 이동

- enter 화면의 아래쪽 한 줄씩 더 보여줌
- h 도움말을 제공
- v vi 에디터를 부름

- q more 정지
- Q 종료

 

10. kill

특정 프로세스를 정해서 종료하고 싶을 때 사용, 보통 kill 명령어는 ps 명령어 다음에 사용 

10-1 killall

특정 프로세스를 모두 종료

10-2. killall5

모든 프로세스 종료

11. sudo

관리자 권한(=root 사용자) 만이 설치나 삭제, 변경을 할 수 있는데 sudo 명령어로 일반 사용자도 root 권한을 임시로 부여 

12. passwd

패스워드 입력

13. rm ( remove ) + 옵션 + 파일명

파일이나 디렉터리를 삭제

- f 옵션을 주면 사용자에게 삭제 여부를 묻지 않고 바로 삭제한다.

- 디렉터리를 삭제할 때는 -r 옵션을 주어야 한다. (디렉터리 삭제 시 하위 디렉터리까지 모두 삭제된다.)

 

-f : 디렉터리 안의 파일을 삭제할 때 사용자에게 확인을 요구하지 않음
-r : 인수 list 에서 지정한 디렉터리 혹은 그 아래의 subdirectory를 삭제
-i : whrite permission 이 없는 파일의 삭제를 위해 대화식으로 확인
-p : 디렉터리 dir-name과 비어있는 부모 디렉터리를 사용자가 제거할 수 있으며, 전체 경로명이 삭제되거나 어떤 이유로 인해 경로명의 일부가 남은 것과 무관하게 표준 출력에 메시지가 출력됨
-s -p : 선택항목 지정 시 표준 오류에 출력되는 메시지를 삭제

 

13-1. rmdir

비슷한 의미로 디렉터리를 삭제

14. touch + -amc + MMDDhhmmYY + 파일명

파일이나 디렉터리의 최근 업데이트 일자를 현재 시간으로 변경한다.

- 최근 업데이트 일자는 ( ls -l ) 명령으로 확인할 수 있다.

- 파일이나 디렉터리가 존재하지 않으면 빈 파일을 만든다.

 

-a : 파일의 액세스 시간을 바꿈
-m : 파일의 갱신 시간을 바꿈
-c : 파일명이 존재하지 않는다면 새로운 파일을 만들지 않음

 

14-1. vi 

vi 편집기 상태로 들어감 

14-2. cat ( concatenate )

파일의 내용을 출력하거나, 파일들을 합치거나, 새로운 파일을 만들거나, 다른 파일에 내용을 덧붙일 때 사용 가능

 

15. head + -카운트 + 파일명

파일의 앞부분을 보고 싶은 줄 수만큼 보여준다. ( 옵션 미 지정 시 상위 10줄)

 

16. tail + -카운트 + 파일명

파일의 뒷부분부터 보고 싶은 줄 수만큼 보여준다. ( 옵션 미 지정 시 하위 10줄)

 참고로 -F 옵션을 주고 실행하면,

파일 내용을 화면에 계속 띄워주고 파일이 변하게 되면 새로운 업데이트된 내용을 갱신해준다.

주로 실시간으로 내용이 추가되는 로그파일을 모니터링할 때 유용하게 사용한다.

 

17. whereis

소스, 실행파일, 매뉴얼 등의 위치를 알려준다.

18. which

패스가 걸려있는 실행 명령 or 실행 파일의 경로를 출력

- ( which ls )

 

19. adduser

새로운 사용자 등록, root 권한으로만 실행 가능

- ( sudo adduser localuser ) 입력 시 localuser 이름의 사용자를 신규 등록

 

20. userdel 

유저를 삭제

- ( sudo userdel localuser ) 입력 시 localuser 이름의 사용자를 삭제

 

21. addgroup

신규 그룹을 등록

- ( sudo addgroup localgroup ) localgroup을 신규등록

 

22. groupdel

그룹을 삭제

- ( sudo groupdel localgroup ) localgroup을 삭제

 

23. grep + 옵션 + 패턴 + 파일명

파일 내부에 있는 텍스트의 내용으로 파일을 찾을 수 있다

-c : 파일 내에서 패턴과 일치하는 줄의 총수를 구한다.
-h : 여러 개의 파일을 검색할 때, 출력에 파일명이 나타나는 것을 방지한다.
-i : 대, 소문자를 구별하지 않는다
-n : 일치하는 줄의 줄 번호도 같이 출력한다
-v : 패턴과 일치하지 않는 줄만 출력한다

 

24. du

사용자 자신의 디스크 사용 상황을 보고해준다

25. diff

diff 두 개의 파일이 일치되도록 변경시키기 위한 정보를 제공해 줌

26. tar, bzip2, gzip + 옵션 + 파일명

파일 압축 형식을 묶거나 푸는 명령어

- tar cvf [파일명(.tar, _tar)] 압축할 파일(또는 디렉터리) : 묶을 때
- tar xvf [파일명(.tar, _tar)]  : 풀 때

 

-c : 새로운 tar파일의 생성
-x : 기존의 tar파일을 푸는 데 사용
-u : 업데이트를 위한 옵션
-t : tar파일을 푸는 것이 아니라 내용을 보는 옵션
-v : 파일을 묶거나 풀 때의 작업을 보여주는 옵션
-z : gzip를 이용해 tar.gz 혹은 .tgz로 묶인 파일을 풀 때 사용하는 옵션

 

- gzip     [파일명]    : 압축 시
- gzip -d [파일명]   : 해제 시

 

-d : 압축을 해제하는 옵션
-f : 압축을 하거나 해제할 때 같은 이름의 파일이 존재할 경우 덮어쓰기를 한다.
-l : 압축파일의 정보를 보여 준다.
-r : 압축 대상의 디렉터리까지 압축을 수행한다.

27. chmod + 옵션 + 파일명, 디렉터리

특정 파일 또는 디렉터리의 퍼미션 수정

-R : 서브 디렉터리까지 모든 파일의 권한을 바꾼다.

 

28. chown + 옵션  + 파일명

파일이나 디렉터리의 소유자, 소유 그룹 수정

-R : 서브 디렉터리까지 모든 파일의 소유자를 바꾼다.

 

29. chgrp + 옵션

파일이나 디렉터리의 소유 그룹 수정

-R : 서브 디렉터리까지 모든 파일의 그룹을 바꾼다.

 

30. umask

파일 생성 시의 퍼미션 값을 변경하는 명령어  

31. at

정해진 시간에 작업을 하나만 수행할 수 있는 명령어

32. crontab

반복적인 작업을 수행하는 명령어

33. fg ( foreground )

작업을 전면 작업으로 변환하는 것으로 모니터에 실행되는 모습을 사용자에 직접 보이며 작업하는 것을 말한다.

 

34. bg ( background )

작업을 후면 작업으로 전화하는 것으로, 사용자의 눈에는 실행되는 모습을 보이지 않으면서도 실제로는 일을 하는 것

- ( 명령어 & ) 로 명령어 다음에 "&" 표시를 붙여서 후면 작업으로 전환할 수 있다.

 

35. jobs

실행되는 job들 나열

-l : 현재 작업하고 있는 디렉터리와 프로세스 그룹 ID를 출력

 

36. mesg

메시지 응답 가능 및 불가 설정

37. talk

로그인한 사용자끼리 대화

38. wall

시스템에 로그인한 모든 사용자에게 메시지 보내기

39. write

로그인한 사용자에게 메시지 전달

40. dd

블록단위로 파일을 복사하거나 파일의 변환을 할 수 있는 명령어

 

41. rpm + 옵션 + 파일명

rpm명령어는 redhat 배포본 관련 패키지를 설치 및 업그레이드하는 명령어입니다.

시스템에 설치되어 있는 패키지를 설치하려 한다면 -i 옵션과 -U 옵션을 써야 함
만약 rpm -e rpm 명령을 실해하면 rpm 은 사라지기 때문에 절대로 하지 말아야 한다.
만약 지웠다면 www.rpm.org 에 가서 rpm 소스를 가져다 설치하는 수밖에 없다.

 

-i, -u : 설치 및 업그레이드 옵션
-e : 패키지의 제거
-q : 패키지 질의
-V : 패키지 검증

 

42. fdisk  -l + -v + -s partition + device

디스크의 파티션을 변경한다


-l : 파티션 테이블의 목록을 출력
-v : fdisk 버전 출력
-s : partition DOS 파티션이 아니라면 해당 파티션의 크기를 출력
device : device 에는 몇 번째 하드디스크를 파티션 할 것인지 알려주어야 한다.

 

아래는 리눅스에서 각각의 디바이스들에 대한 이름이다.
첫 번째 설치된 하드 드라이브 : fdisk /dev/hda
두 번째 설치된 하드 드라이브 : fdisk /dev/hdb
SCSI의 첫 번째 하드 드라이브 : fdisk /dev/sda
SCSI의 두 번째 하드 드라이브 : fdisk /dev/sdb

 

43. ps

ps 명령을 사용하면 어떤 프로세스의 목록과 활동 중까지 알 수 있다.
-aux 옵션을 사용하면 시스템에서 동작중인 모든 프로세스를 살필 수 있다.


Space : 상황 즉시 갱신
-s : 갱신 시간 지정(초 단위)

CPU 사용률 기준으로 정렬
-M : 메모리 사용률 기준으로 정렬
-u : 지정한 사용자의 프로세스만 나타남
-k : 지정한 프로세스 kill
-h : 도움말


44. shutdown 옵션 + 시간 + 메세지

시스템을 종료할 때 사용되는 명령어

-t : n t 옵션 뒤에 n초를 명시해서, 경고 메시지를 보낸후 n초 후에 kill 시그널을 보냄
-h : shutdown시 halt를 실행
-r : 시스템 종료를 완료하고 나서 다시 부팅 과정을 수행(리부팅)
-c : 이미 예약되어 있는 shutdown을 취소
-k : 모든 동작을 제대로 수행하지만 시스템을 종료할 시간이 되면 아무것도 하지 않음.

'IT' 카테고리의 다른 글

ubuntu 웹 서버 구축 및 연동하기  (0) 2020.01.29
ubuntu 서버 18.04LTS 설치 USB 만들기  (0) 2020.01.28
구글 애드센스 넌 뭐냐?  (0) 2020.01.21