리눅스 명령어 및 사용에 대해 알아 보자!
1. 리눅스 명령어 사용 형식
#command [-단일문자옵션] [--다중문자옵션]
* 단일 문자로 구성된 옵션은 동시에 여러 개를 지정 할 수 있다.
ex) ls -a -l 이런 표현은 다음과 같이 표현이 가능 >> ls -al
2. 디렉토리의 정의 및 경로 표현 방법
* 디렉토리란 파일을 담고 있는 일종의 방
* 디렉토리 및 파일의 표현 방법 2가지
- 절대 경로 표현 방법
> /(root) 디렉토리를 기준으로 표현하는 방법
- 상대 경로 표현 방법
> 현재위치(./)를 기준으로 표현하는 방법 (현재위치는 생략가능)
* 디렉토리의 표현
/ : 최상위 root 디렉토리 (절대경로 표현의 기준)
./ : 현재 디렉토리 (상대경로 표현의 기준 : 생략가능)
../ : 현재 디렉토리의 상위 디렉토리
~/ : 각 사용자의 홈디렉토리
* 디렉토리는 파일의 일종
- 이름 : 최대 255자
- 대소문자 구별
- 확장자가 없음
* cd
- 디렉토리를 이동하는 명령어, 보통 옵션이 없이 함
#cd [이동할 디렉토리명]
* pwd
* rmdir
- 지정한 디렉토리를 삭제
- 디렉토리가 비워져 있는 경우에만 삭제 가능
- 지정한 디렉토리를 생성
- 생성된 디렉토리는 생성한 유저의 소유가 됨
> 옵션 #mkdir [옵션] [명령]
-p, --parents
: 필요하다면 생성하고자 하는 상위의 디렉토리까지 생성함
-version
: 버전의 정보를 보여줌
- 현재 디렉토리 안의 목록(디렉토리들)을 출력
> 옵션 #ls [옵션] [출력파일]
-a, --all : 숨겨진 파일의 목록까지 출력
-ㅣ : 파일에 대한 정보를 자세히 출력
- R : 하위 디렉토리의 내용까지 출력
- F : 파일의 목록 뒤에 특성 문자를 출력
- k : kb 단위로 파일의 크기 출력
- i : 파일의 inode 번호를 같이 출력 (고유번호)
* 리다이렉트
- 표준 입출력 지시자
> : 표준 출력 지시자
> : 표준 출력 지시자
command > 파일 : 명령 결과를 파일로 새로운 저장(기존 파일이 있을 시 새로운 파일로 대체)
>> : 추가 표준 출력 지시자
command >> 파일 : 명령 결과를 파일에 덧붙여 추가(기존 파일이 없을 시 새로운 파일 생성)
< : 표준 입력 지시자
command < 파일 : 파일의 내용을 명령의 입력 값으로 사용
>> : 추가 표준 출력 지시자
command >> 파일 : 명령 결과를 파일에 덧붙여 추가(기존 파일이 없을 시 새로운 파일 생성)
< : 표준 입력 지시자
command < 파일 : 파일의 내용을 명령의 입력 값으로 사용
* cat
- 출력파일의 내용 출력
> 옵션 #cat [옵션] [출력파일]
-n : 행단위 번호
-b : 공백 라인을 제외하고 행단위 번호
- 파일의 입출력 제어
#cat [< 입력파일 > 출력파일]
기본 입력 파일 : 키보드
기본 출력 파일 : CRT(모니터)
입력 파일의 경우 "<" 기호 생략 가능
>> : 출력 파일이 존재하는 경우 내용 추가
#cat a.txt
#cat < a.txt > b.txt
* echo
- 환경 변수나 입력내용을 출력
#echo [환경변수 | 문자열]
- 리다이렉트를 이용하면 파일을 생성 할 수도 있음
* env
- 모든 환경 변수를 출력
* date
- 현재 서버의 날짜와 시간을 확인하거나 설정하는 명령어
> 옵션
-I : ISO-8601의 날짜 표기 방식에 따라 출력
-u : 세계 표준 시각을 알려줌
--version : 버전 정보를 보여 줌
- 현재의 날짜와 시간을 특정일로 바꿀 땐 #date [월/일/시/분/년도]로 바꿈
- N일 후의 날짜가 궁금할 때 #date --date 'N day' 로 확인 가능
> 옵션 #cat [옵션] [출력파일]
-n : 행단위 번호
-b : 공백 라인을 제외하고 행단위 번호
- 파일의 입출력 제어
#cat [< 입력파일 > 출력파일]
기본 입력 파일 : 키보드
기본 출력 파일 : CRT(모니터)
입력 파일의 경우 "<" 기호 생략 가능
>> : 출력 파일이 존재하는 경우 내용 추가
#cat a.txt
#cat < a.txt > b.txt
- 환경 변수나 입력내용을 출력
#echo [환경변수 | 문자열]
- 리다이렉트를 이용하면 파일을 생성 할 수도 있음
* env
- 모든 환경 변수를 출력
* date
- 현재 서버의 날짜와 시간을 확인하거나 설정하는 명령어
> 옵션
-I : ISO-8601의 날짜 표기 방식에 따라 출력
-u : 세계 표준 시각을 알려줌
--version : 버전 정보를 보여 줌
- 현재의 날짜와 시간을 특정일로 바꿀 땐 #date [월/일/시/분/년도]로 바꿈
- N일 후의 날짜가 궁금할 때 #date --date 'N day' 로 확인 가능
* cp
- 파일이나 디렉토리를 복사
#cp [옵션] 원본파일 복사파일명
> 옵션
-a : 원본의 속성유지
-r : 하위 디렉토리나 파일모드 복사
-f : 강제 실행
-p : 파일의 소유와 권한 등을 보존한 채 복사(간혹 없는 버전이 있음)
-u : 새파일 덮어쓰기 금지
* mv
- 파일이나 디렉토리를 이동
- 파일의 이름명을 바꿀 경우도 사용
#mv [옵션] 원본파일 이동파일명
> 옵션
-f : 강제 실행
-b : 파일이 덮어 씌어질 경우 백업파일을 생성
-d : 디렉토리 삭제
-i : 삭제전 일일이 삭제여부 확인(파일 수가 적을 때)
-v : 삭제 파일 만들기
* rm
- 파일이나 디렉토리를 삭제함
#rm [옵션] 대상파일
> 옵션
-f : 강제 실행
-r : 대상 중에 디렉토리가 있는 경우 디렉토리도 삭제(디렉토리가 비어 있지 않아도 삭제)
* ln
- link 파일 생성 (soft, hard) (window 바로가기아이콘 같은 기능)
#ln [옵션] 원본파일 링크파일
> 옵션
-s : soft link 생성 (디렉토리의 경우 soft link만 가능)
-f : 대상이 존재하는 경우 지우고 link 파일 생성
* more(less)
- 화면 출력을 화면 단위로 제어 함
- 출력되는 내용이 많아서 화면을 넘어 가는 경우 사용 함
# more [파일명]
* |
- 앞쪽 명령의 결과를 뒤쪽 명령의 입력 값으로 이용 함
#ls -al | more
* grep
- 필터링
- 출력 문자열 중에 원하는 단어나 글자가 들어 있는 라인 만 출력하고자 할 때 사용
command | grep [필터링 문자열]
ls -al | grep conf
* find
- 파일 시스템에서 조건에 만족하는 파일을 검색
#find 검색경로 검색조건1, 검색조건2, .....
> 검색조건
-name : 파일명으로 검색 (와일드카드문자('*','?') 사용)
-perm : 특정 퍼미션을 가진 파일을 검색
-empty : 크기가 0인 파일 검색
-user : 지정한 사용자가 소유한 파일
-group : 지정한 그룹이 소유한 파일
-nouser : 소유자가 없는 파일
-nogroup : 그룹 소유자가 없는 파일
-type : 검색하고자 하는 파일의 종류 지정
b(block:크기가 일정한 파일들(하드들)), c(char), d(dir), l(slink), f(regular)
-mount : 마운트 된 파일 시스템 만 검색
* man
- 도움말을 제공함
#man [명령어] : 명령어에 대한 전반적으로 구체적인 설명
ex) #man vi
#[명령어] --help : 명령어에 사용되는 옵션 및 기타 사용법
ex) #vi --help
#info [명령어] : 명령어에 대한 자세한 설명
ex) #info vi
* shutdown
- 시스템 종료 명령어
#/sbin/shutdown [옵션][-t sec] time [경고메시지]
> 옵션
-t sec : 다른 Runlevel로 바뀌기 전에 경고를 내보내는 프로세스와 kill 시그널 사이의 기다리는 시간(단위/초)
-k : 시스템에 접속된 모든 사용자에게 경고 메시지만 전달
-r : 셧다운 후 재부팅
-h : 셧다운 후 시스템 정지
-f : 재부팅 과정에서 fsck(File System Check)를 실행하지 않음
-c : 실행 중인 셧다운 취소
ex) 시스템 종료 후 재부팅 명령어
그 밖에도 여러가지 명령어가 있지만 주로 꼭 알아 두어야 할 명령어에는 붉은색으로 표시해 두었습니다.
- 파일이나 디렉토리를 복사
#cp [옵션] 원본파일 복사파일명
> 옵션
-a : 원본의 속성유지
-r : 하위 디렉토리나 파일모드 복사
-f : 강제 실행
-p : 파일의 소유와 권한 등을 보존한 채 복사(간혹 없는 버전이 있음)
-u : 새파일 덮어쓰기 금지
* mv
- 파일이나 디렉토리를 이동
- 파일의 이름명을 바꿀 경우도 사용
#mv [옵션] 원본파일 이동파일명
> 옵션
-f : 강제 실행
-b : 파일이 덮어 씌어질 경우 백업파일을 생성
-d : 디렉토리 삭제
-i : 삭제전 일일이 삭제여부 확인(파일 수가 적을 때)
-v : 삭제 파일 만들기
* rm
- 파일이나 디렉토리를 삭제함
#rm [옵션] 대상파일
> 옵션
-f : 강제 실행
-r : 대상 중에 디렉토리가 있는 경우 디렉토리도 삭제(디렉토리가 비어 있지 않아도 삭제)
- link 파일 생성 (soft, hard) (window 바로가기아이콘 같은 기능)
#ln [옵션] 원본파일 링크파일
> 옵션
-s : soft link 생성 (디렉토리의 경우 soft link만 가능)
-f : 대상이 존재하는 경우 지우고 link 파일 생성
* more(less)
- 화면 출력을 화면 단위로 제어 함
- 출력되는 내용이 많아서 화면을 넘어 가는 경우 사용 함
# more [파일명]
* |
- 앞쪽 명령의 결과를 뒤쪽 명령의 입력 값으로 이용 함
#ls -al | more
* grep
- 필터링
- 출력 문자열 중에 원하는 단어나 글자가 들어 있는 라인 만 출력하고자 할 때 사용
command | grep [필터링 문자열]
ls -al | grep conf
* find
- 파일 시스템에서 조건에 만족하는 파일을 검색
#find 검색경로 검색조건1, 검색조건2, .....
> 검색조건
-name : 파일명으로 검색 (와일드카드문자('*','?') 사용)
-perm : 특정 퍼미션을 가진 파일을 검색
-empty : 크기가 0인 파일 검색
-user : 지정한 사용자가 소유한 파일
-group : 지정한 그룹이 소유한 파일
-nouser : 소유자가 없는 파일
-nogroup : 그룹 소유자가 없는 파일
-type : 검색하고자 하는 파일의 종류 지정
b(block:크기가 일정한 파일들(하드들)), c(char), d(dir), l(slink), f(regular)
-mount : 마운트 된 파일 시스템 만 검색
* man
- 도움말을 제공함
#man [명령어] : 명령어에 대한 전반적으로 구체적인 설명
ex) #man vi
#[명령어] --help : 명령어에 사용되는 옵션 및 기타 사용법
ex) #vi --help
#info [명령어] : 명령어에 대한 자세한 설명
ex) #info vi
* shutdown
- 시스템 종료 명령어
#/sbin/shutdown [옵션][-t sec] time [경고메시지]
> 옵션
-t sec : 다른 Runlevel로 바뀌기 전에 경고를 내보내는 프로세스와 kill 시그널 사이의 기다리는 시간(단위/초)
-k : 시스템에 접속된 모든 사용자에게 경고 메시지만 전달
-r : 셧다운 후 재부팅
-h : 셧다운 후 시스템 정지
-f : 재부팅 과정에서 fsck(File System Check)를 실행하지 않음
-c : 실행 중인 셧다운 취소
ex) 시스템 종료 후 재부팅 명령어
그 밖에도 여러가지 명령어가 있지만 주로 꼭 알아 두어야 할 명령어에는 붉은색으로 표시해 두었습니다.
댓글 없음:
댓글 쓰기