이 글을 통해, 리눅스의 명령어를 나만의 방식으로 정리해보고자 한다.
명령어 [옵션] [인자값]
# 명령어 : 리눅스를 다루기 위한 명령
# 옵션 : 세부 설정을 지정 "-" + 옵션의 형태. 대소문자 구분. 명령에 따라 여러 옵션 선택 가능.
# 인자값 : 명령의 전달 대상. 주로 디렉토리/파일명
# 형식
# 주요 옵션
# 사용 예시
# 형식
cat [옵션] [파일]
# 주요 옵션
-n # 라인마다 번호 출력
> # 파일 내용 덮어쓰기. (해당 파일이 없다면) 파일 생성 및 내용 입력
>> # 파일 내용 이어서 입력
# 사용 예시
cat -n test.txt # test.txt의 내용(+라인 번호)을 출력한다.
# 형식
cd [옵션]
# 주요 옵션
.. # 상위 디렉토리 이동
/ # 최상위 디렉토리(root) 이동
# 사용 예시
cd /usr/local # 지정 디렉토리 이동
🌟 시도하는 사용자가 복사 대상이 되는 파일/디렉토리의 읽기 권한이 있어야만 실행 가능
# 형식
cp [옵션] [대상 파일|디렉토리] [복사될 파일|디렉토리]
# 주요 옵션
-b # 복사할 파일이 존재하면, 백업파일 생성
-f # 복사할 파일이 존재하면, 강제로 덮어쓰기
-i # 복사할 파일이 존재하면, 사용자에게 엎어쓰기 유무 확인
-r # 디렉토리 하위 파일까지 모두 복사
-u # 변경된 파일에 한해서만 이동
-v # 상황을 실시간으로 체크 가능
-a # 원본 파일의 링크 정보까지 복사
-p # 원본 파일의 소유자, 그룹, 권한 등 보까지 동일하게 복사 ※ -p 옵션 없으면 실행한 사용자 소유
# 사용 예시
cp -apv dir1 dir2 # dir1를 dir2 하위로 이동 (실시간 체크 + 원본 파일의 세부 정보까지 복사)
# 형식
head [옵션] [파일]
# 주요 옵션
-3 # 해당 파일의 앞 3행을 출력 (옵션 없을 경우, 10행)
# 사용 예시
head test.txt # test.txt의 앞 10행을 출력
# 형식
ls [옵션]
# 주요 옵션
# 항목에 따라 복수 옵션 지정 가능
-a # 숨김 디렉토리/파일까지 표시 ※ 숨김 파일은 앞에 .이 붙음
-l # 상세 정보까지 표시
-S # 파일을 크기별로 출력
# 사용 예시
ls -lS # 파일의 상세정보를 크기별로 출력
# 형식
mkdir [옵션] [디렉토리]
# 주요 옵션
-p dir1/dir2 # 하위 디렉토리까지 생성
-m 777 [디렉토리] # 지정한 권한(777)을 가진 dir3 디렉토리 생성
# 사용 예시
mkdir -m 755 a b c # 755권한의 a, b, c 디렉토리를 일괄 생성
🌟 파일을 옮기면서 변경된 위치에서의 파일/디렉토리명도 지정 가능
# 형식
mv [옵션] [이동할 파일|디렉토리] [이동할 위치]
# 주요 옵션
-b # 이동시킬 파일이 존재하면, 백업파일 생성
-f # 이동시킬 파일이 존재하면, 강제로 덮어쓰기
-i # 이동시킬 파일이 존재하면, 사용자에게 덮어쓰기 유무 확인
-n # 이동시킬 파일이 존재하면, 덮어쓰기 하지 않기
-u # 변경된 파일에 한해서만 이동
# 사용 예시
mv before.txt dir1/after.txt # before.txt를 dir1 하위로 옮기면서 after.txt로 파일명 변경
# 형식
rm [옵션] [파일|디렉토리]
# 주요 옵션
-f # 지정 디렉토리/파일을 강제로 삭제
-r [디렉토리] # 지정 디렉토리 삭제 (해당 옵션 추가하지 않으면 파일만 삭제 가능)
# 사용 예시
rm -rf * # 현재 위치의 모든 파일/디렉토리를 강제로 삭제 (확인 문구 없기에 사용 시 주의!!)
🌟 빈 디렉토리만을 삭제 대상으로 하기에, 삭제 처리 시 주로 rm 명령어를 사용
# 형식
rmdir [옵션] [디렉토리]
# 주요 옵션
-p dir1/dir2 # 하위 디렉토리(dir1+dir2)까지 삭제
# 사용 예시
rmdir dir1 # 현재 위치의 빈 디렉토리인 dir1을 삭제
🌟 가장 최근 로그 체크처럼 실시간으로 쌓이는 정보가 있는 파일을 탐색할때 유용
# 형식
tail [옵션] [파일]
tail [옵션] [파일] | grep '검색문자열'
# 주요 옵션
-3 # 해당 파일의 뒤 3행을 출력 (옵션 없을 경우, 10행)
-f # 파일 업데이트 내용을 실시간으로 출력
# 사용 예시
tail test.txt # test.txt의 뒤 10행을 출력
tail -f test.txt | grep 'log' # 'log'라는 내용이 포함된 행만을 실시간으로 출력
# 형식
pwd