Operating System(OS)/리눅스 마스터 2급 이론 정리
리눅스마스터 2급 자격증 이론 내용 정리 / 02. 리눅스 기본 명령어 - 2. 디렉터리 및 파일 관련 명령어
9rrrr-m
2024. 8. 4. 14:39
더보기
올해안에 리눅스 마스터 2급 따기를 목표로 '세종사이버대학교 컴퓨터공학과·AI공학과' 유튜브 채널의 컴퓨터·AI공학과 리눅스마스터2급 자격증 특강 강의를 듣고 내용을 정리한 것입니다.
* 오타나 내용 오류시 댓글 남겨주시면 감사하겠습니다!
** 코드 블록에 명령어는 적혀있으나, 모든 실행 결과를 함께 적지는 않았습니다.
02. 리눅스 기본 명령어
1. 사용자 생성 및 계정 관리
2. 디렉터리 및 파일 관련 명령어
(1) 기본 명령어
3. 리다이렉션과 정규 표현식
4. 기타 명령어
02. 리눅스 기본 명령어 - 2. 디렉터리 및 파일 관련 명령어
(1) 기본 명령어
▶ pwd : 현재 작업 디렉터리명 표시
▶ cd : 디렉터리 이동 (change directory)
- cd [경로명]
◦ 경로명: ~ (홈 디렉터리), . (현재 디렉터리), .. (상위 디렉터리), / (루트 디렉터리)
[LinuxMaster]# pwd
/root
[LinuxMaster]# cd /var/www/
[LinuxMaster]# pwd
/var/www
[LinuxMaster]# cd ~
[LinuxMaster]# pwd
/root
▶ mkdir : 디렉터리 만들기
- mkdir <옵션> [디렉터리명]
◦ 옵션: -m (권한 설정, 기본 755), -p (상위 디렉터리 생성), -v (생성 디렉터리 메시지 표시)
▶ ls : 디렉터리의 파일 목록(정보) 표시
- ls <옵션> [디렉터리명]
◦ 옵션: -a (숨김 파일 포함), -l (자세히 목록 보기), -d (디렉터리 지정), -r (역순으로 표시), -R (하위 디렉터리 포함)
▶ cp : 파일, 디렉터리 복사
- cp <옵션> [소스] [타깃]
◦ 옵션: -b (타깃 파일 존재 시 백업), -f (타깃 파일 존재 시 강제로 삭제 및 복사), -i (타깃 파일 존재 시 덮어쓰기 확인), -r (하위 폴더 및 파일 포함)
▶ rm : 파일, 디렉터리 삭제
- rm <-옵션> [파일명 | 디렉터리명]
◦ 옵션: -f (확인없이 삭제), -i (사용자에게 확인), -r (하위 디렉터리 포함, 모든 파일 제거)
▶ touch : 비어있는 파일 생성 혹은 파일의 시간(time stamp) 변경
- touch <-옵션> [파일명]
◦ 옵션: -a (접근시간 변경), -m (수정시간 변경), -c (파일 시간을 현재 시간으로 변경), -t (특정 파일의 시간 변경), -r 파일A 파일B (파일A의 시간을 파일B와 동일하게 변경)
▶ file : 파일의 종류와 속성값 표시
- file <-옵션> [파일명]
◦ 옵션: -b (파일 형식만 표시), -f (지정한 파일만 대상으로 실행), -z (압축 파일 내용 표시), -i (MIME으로 출력)
[LinuxMaster]# file hi.txt
hi.txt: ASCII text
[LinuxMaster]# file -i hi.txt
hi.txt: text/plain; charset=us-ascii
[LinuxMaster]# file -b hi.txt
ASCII text
▶ find : 지정된 조건에 따라 파일을 검색하는 명령어 (지정한 경로 및 하위 경로를 대상으로 검색)
- find <경로> <-옵션> <정규표현식> [파일명]
◦ 옵션: -name (이름으로 검색), -user (사용자의 파일/디렉터리 검색), -perm (권한으로 검색), -type (파일 유형으로 검색), -atime 숫자 (숫자 일수 이전에 접근한 파일 검색), -size (파일 크기를 지정하여 검색), -exec (검색 파일을 대상으로 실행할 명령어)
▶ locate : 파일의 위치 검색
- locate [파일명]
▶ cat : 파일 내용을 출력
- cat <-옵션> [파일명]
◦ 옵션: -n (행 번호 표시), -b (행 번호 표시, 비어 있는 행 제외), -s (2개 이상 빈 행을 하나로 표시), -A (텍스트 파일의 개행 문자, 탭 문자 등 확인)
▶ head : 파일의 앞 부분만 출력
- head <-옵션> [파일명]
◦ 옵션: -c (지정 숫자의 바이트 만큼 출력), -n (지정 줄 수 만큼 출력, 기본 10줄)
[LinuxMaster]# head -n 3 /etc/httpd/conf/httpd.conf
#
#
#
[LinuxMaster]# head -3 /etc/httpd/conf/httpd.conf
#
#
#
▶ tail : 파일의 마지막 부분만 출력
- tail <-옵션> [파일명]
◦ 옵션: -c (지정 숫자의 바이트 만큼 출력), -n (지정 줄 수 만큼 출력, 기본 10줄), -f (새롭게 추가되는 내용을 실시간 출력), -v (파일명 표시), -q (파일명 표시하지 않음)
[LinuxMaster]# tail -3 /etc/httpd/conf/httpd.conf
#
#
#
▶ more : 화면 단위로 파일의 내용을 출력
- more <-옵션> [파일명]
◦ 옵션: -숫자 (페이지 당 표시할 줄 수)
◦ 보기 작업: 다음 페이지 (space), 다음 줄 (Enter), ½ 페이지 (Ctrl + D), 이전 페이지 (Ctrl + B), 종료 (Q), 문자열 패턴 검색 (/패턴)
[LinuxMaster]# more -4 /etc/httpd/conf/httpd.conf
#
#
#
#
--More--(1%)
▶ less : 텍스트 파일을 한 화면씩 표시
- 특징: more와 다르게 커서를 이동할 수 있음
▶ wc : 파일의 라인 수, 단어 수, 알파벳 수 표시
- wc <-옵션> [파일명]
◦ 옵션: -l (라인 수 표시), -w (단어 수 표시), -c (알파벳 수 표시)
[LinuxMaster]# cat hi.txt
hihi
[LinuxMaster]# wc -w hi.txt
1 hi.txt
▶ grep : 특정한 문자열 패턴, 정규식을 이용하여 단어를 검색
- grep <-옵션> [문자열] [파일명]
◦ 옵션: -r (모든 디렉터리 파일), -E (정규표현식), -i (대소문자 무시), -v (검색 대상이 포함되지 않은 라인만 표시), -n (라인 수 표시), -l (문자열이 포함된 파일명 표시)
◦ 예) grep '^[AB]' sample.txt (A 혹은 B로 시작하는 모든 라인)
grep 'fine$' sample.txt (fine으로 끝나는 모든 라인)
[LinuxMaster]# grep chris /etc/passwd
chris:x:1001:1001::/CHRIS:/bin/bash
[LinuxMaster]# cat /etc/passwd | grep chris
chris:x:1001:1001::/CHRIS:/bin/bash
▶ sort : 정렬하여 표시하는 명령어
- sort <-옵션> [파일명]
◦ 옵션: -b (앞 공백 무시), -o (저장 파일명), -r (역순), -f (대소문자 구분하지 않음), -t (필드 구분자 지정), -u (중복 행 제거), -m (정렬 파일을 병합), -n (숫자만 비교)
[LinuxMaster]# sort -b -u /etc/httpd/conf/httpd.conf | grep '^[a-z | A-Z]'
▶ cut : 구분자를 이용하여 특정 필드를 추출하는 명령어
- cut <-옵션> [파일명]
◦ 옵션: -b (바이트 수를 기준), -c (문자열, 콤마와 하이픈으로 범위 지정), -f (필드를 기준), -d (구분 문자, 기본 값은 탭), -z (라인의 구분자로 개행이 아닌 NULL을 이용)
[LinuxMaster]# cut -c 1-5 /etc/httpd/conf/httpd.conf | grep '^[a-z | A-Z]'
▶ split : 여러개의 파일로 분리하여 저장
- split <-옵션> [파일명]
◦ 옵션: -b (byte 단위로 분할), -l (라인 수 단위로 분할)
[LinuxMaster]# split -l 30 /etc/httpd/conf/httpd.conf
[LinuxMaster]# ls
xaa xab xac xad xae ...
▶ diff : 파일을 라인 단위로 비교하여 표시
- diff <-옵션> [파일A | 디렉터리A] [파일B | 디렉터리B]
◦ 옵션: -b (연속 공백 무시), -i (대소문자 구분 없음), -S (동일한 파일인지 확인), -r (디렉터리 차이점 출력)
▶ cmp : 파일을 바이트(문자) 단위로 비교하여 표시
- cmp <-옵션> [파일A] [파일B]
◦ 옵션: -b (다른 바이트 출력), -l (다른 문자 위치, 문자 출력), -S (비교 결과만 표시)
▶ comm : 파일을 라인 단위로 비교하여 표시
- comm <-옵션> [파일A] [파일B]
◦ 옵션: -1 (파일A에만 있는 내용 제외), -2 (파일B에만 있는 내용 제외), -3 (공통으로 존재하는 내용 제외)
728x90