우분투 기본 명령어
에 대해 한번 알아보는 시간을 갖도록 하겠습니다.
여기저기서 참고하며 중복이 되지 않도록 정리했어요.
여기 포스트만 보셔도 살짝은 다르지만 전체적으로 비슷비슷하니
리눅스마스터 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 |