먼저 들어가기전에 bash쉘의 몇가지 기능, 단축키와 기본 명령어를 알아보고 가자.
기능
-탭기능
tab키로 명령어, 경로 등을 자동완성 할 수 있다. 나오지 않는다면 tab키를 두번 눌러 해당 문자로 시작하는 모든 단어들을 리스트로 알아볼 수 있다. ex)# cd /bin/a arch awk
-역 점진 탐색 기능
ctrl+r을 누르면 기존 프롬프트 대신 "(reverse-i-search)`':" 모드로 변경된다. 해당 문자로 시작하는 최근에 입력한 명령어가 자동으로 완성된다. ex)(reverse-i-search)`a': alias
-방향키
위아래 방향키로 전에 입력한 명령어들을 불러올 수 있다.
단축키
ctrl+d 로그아웃
ctrl+a 줄의 처음으로 커서를 이동
ctrl+e 줄의 마지막으로 커서를 이동
ctrl+l 화면을 비움==clear
ctrl+d 커서 위치의 글자를 삭제(로그아웃 조심)
ctrl+k 커서 위치부터 줄의 마지막까지 삭제
ctrl+u 줄의 처음부터 커서 앞까지 삭제
ctrl+o 이전 명령어를 순차적으로 실행
기본 명령어
clear 출력된 프롬프트들을 위로 올려 화면을 비운다.
[명령어] --help 해당 명령어의 도움말을 불러옴
history 전에 입력한 명령어들을 리스트로 볼 수 있다.
![history number] 히스토리 앞의 번호를 입력하면 해당 명령어를 불러 올 수 있다. ex) !3
!! 바로 이전에 입력한 명령어를 불러온다.
시스템 종료 : shutdown -h now, halt, init 0, poweroff
시스템 재부팅 : shutdown -r now, reboot, init 6
명령어
명령어 구조
# [명령어] [옵션] [파일명 or 디렉토리명 등]
*옵션 -a -b -c 라고 써도되지만 -abc 라고 해도 적용된다.
Alias
명령어에 별칭을 지정해 별칭만으로도 명령어를 실행할 수 있게 만들어주는 기능
등록되어있는 alias 확인
# alias
alias 지정
# alias [별칭]=['명령어']
alias a='alias'를 통해 alias의 별칭을 a로 지정해 a입력 만으로도 alias명령어가 실행되는것을 볼 수 있다.
alias 해제
# unalias [별칭]
등록된 a='alias'가 없어진 것을 확인할 수 있다.
중괄호 확장
echo 명령어를 통해 {}안에 있는 알파벳들을 순환
1부터 10까지 순차적으로 출력
1부터 10까지 2씩증가하게 출력
위와 같이 인자를 묶는데에 쓰인다.
반복문
명령어를 여러번 처리 해야할 때 쓰인다.
반복문을 통해 i라는 변수를 echo 명령어 안에서 적용
man (Manual) 명령어
명령어에 대한 옵션, 사용방법 등 다양한 정보를 상세하게 확인할 수 있다.
q를 누르면 프롬프트로 다시 돌아올 수 있다.
ex) #man shutdown
man 프로그램(패키지) 설치
#yum -y install man
*한글 메뉴얼 프로그램(패키지) 설치
#yum -y intall man-pages-ko.noarch
pwd (Print Working Directory) 명령어
현재 위치한 디렉토리를 절대경로 확인
# pwd
~는 홈디렉토리 라는 뜻이며 현재 홈디렉토리는 최상위 디렉토리 아래의 root이다.
cd (Change Directory)
디렉토리 이동(변경)
# cd [디렉토리명 or 특수문자]
# cd - 이전 작업 디렉토리로 이동
# cd or # cd ~ 로그인한 사용자의 홈디렉토리로 이동
(참고)
절대경로를 이용해 etc라는 디렉토리로 이동
위치확인 후 다시 이전에 있던 홈디렉토리로 이동
상위 디렉토리가 최상위 디렉토리이기 때문에 cd ..은 아무것도 하지않는다.
cd 를 이용해 홈디렉토리로 이동
절대경로를 이용하여 etc 디렉토리로 이동
..는 상위디렉토리를 뜻하는것이므로 etc -> local -> usr-> / -> var -> tmp 이렇게 이동한것을 알 수 있다.
절대경로를 이용하면 /usr/local/etc 라고 표기해야한다.
상대경로를 이용하면 위와같이 효율적으로 ./local/etc 라고만 쓸 수 있다.
ls (List Segment) 명령어
파일 및 디렉토리 목록 출력
# ls [옵션] [파일]
옵션
-a 숨김파일을 포함한 경로안에 모든 내용을 출력
-l list형태로 출력
-F 파일의 형식을 알 수 있는 문자를 추가
-t 수정된 날짜를 기준으로 출력
-R 현재 위치를 기준으로 하위 디렉토리 및 파일을 출력
-h -l과 함께 쓰이며 파일의 크기를 사람이 보기 쉽게 출력
-S -l과 함께 쓰이며 파일크기를 기준으로 정렬
-L 심볼릭 링크 파일의 경우 원본 파일의 정보를 출력
현재 디렉토리의 파일 및 디렉토리 출력
현재 디렉토리에 있는 모든 파일을 크기를 기준으로 리스트형태로 출력
-로 시작하면 파일, d로 시작하면 디렉토리이다.
ls -F /bin과 ls -F /dev 결과를 가져온 것이다.
* 실행파일, / 디렉토리파일, @ 심볼릭 링크, (없음)은 일반파일을 뜻한다.
mkdir (Make Directory) 명령어
디렉토리 생성
#mkdir [옵션] [디렉토리명 or 경로/디렉토리명]
[디렉토리명] - 현재 디렉토리에 입력한 이름을 가진 디렉토리 생성
[경로/디렉토리명] - 해당 경로 입력한 이름을 가진 디렉토리 생성
옵션
-p 부모디렉토리를 필요한 만큼 생성
현재 디렉토리에 practice라는 이름을 가진 디렉토리 생성 후 확인
-p 옵션을 이용하여 test/1/2/3/4 부모 디렉토리를 포함해 모두 생성 후 해당 디렉토리로 이동
mkdir 1 mkdir 2 mkdir 3 세번 입력하지 않고도 mkdir 1 2 3으로 한번에 생성할 수 있다.
현재 경로가 아닌 다른 경로에 생성할 경우 중괄호를 이용하여 생성해야한다.
/home/1 2 3 할경우 모두 경로로 인식하여 /home/1 /2 /3 이라고 인식한다.
중괄호 이용하여 한번에 test 1~10 생성
rmdir (Remove Directory) 명령어
빈 디렉토리 삭제
# rmdir [옵션] [디렉토리명 or 경로/디렉토리명]
[디렉토리명] - 현재 디렉토리에 입력한 이름을 가진 빈 디렉토리 삭제
[경로/디렉토리명] - 해당 경로 입력한 이름을 가진 빈 디렉토리 삭제
옵션
-p 비어있는 부모디렉토리에 한해서 모두 지움
현재 디렉토리에 있는 practice 디렉토리 삭제 후 확인
-p 옵션을 사용해 test/1/2/3/4 부모디렉토리를 포함해 모두 삭제 후 확인
현재 경로의 1 2 3 삭제 후 확인
중괄호를 이용하여 test1~10 한번에 삭제 후 확인
다른 경로에 생성한 1,2,3 중괄호를 이용하여 삭제 후 확인
cp (Copy) 명령어
파일복사
# cp [옵션] [소스(원본)] [타겟(사본)]
옵션
-i 복사할 대상과 동일한 이름이 존재하는 경우 덮어쓸 것인지에 대해 사용자에게 물어봄
알리아스에 등록되어있음
-r 디렉터리를 복사할 경우 포함된 하위 디렉토리 및 파일들을 모두 복사
-v 명령어 실행 과정을 보여줌
/bin의 ls를 현재디렉토리아래 test에 ls_backup라는 이름으로 복사 후 확인
ls_backup의 이름으로 복사하려고 하니 alias로 인해 -i 옵션이 적용 되었다.
/bin의 dd와 cp를 중괄호 사용하지 않고 test에 복사 후 확인
(마지막 인자는 경로이어야 한다.)
/bin의 nice와 rpm을 test에 복사 후 확인
응용
탭기능으로 /bin안에 a로 시작하는 파일들 출력
a로 시작하는 모든 파일들 현재디렉토리의 1에 복사 후 확인
/bin안에 r로 시작하고 m으로 끝나는 모든 파일 1에 복사 후 확인
mv (Move) 명령어
파일이동
#mv [옵션] [소스(원본)] [타겟(사본)]
옵션
-i 이동시킬 대상과 동일한 이름이 존재하는 경우 덮어쓸 것인지에 대해 사용자에게 물어본다.
알리아스에 등록되어있음
-f 중복될 경우 사용자에게 묻지 않고 바로 덮어쓴다.
-v 명령어 실행 과정을 보여준다.
test 디렉토리에있던 cp,dd,nice를 00으로 옮긴 후 양쪽 확인
test의 ls_backup을 00의 LS라는 이름으로 복사 후 확인
(cp와 마찬가지로 마지막 인자가 경로이여야한다.)
mv 같은 경우 전의 폴더에서는 없어짐으로 조심해야한다.
rm (Remove) 명령어
파일 삭제
#rm [옵션] [디렉토리/파일]
옵션
-i 삭제 여부를 사용자에게 확인한다.
-f 파일이나 디렉토리 삭제 시 물어보지 않고 삭제
-r 디렉토리 삭제 시 하위 디렉토리 및 파일을 포함하여 모두 삭제
test 아래의 rpm삭제 후 확인
y 후 엔터= 삭제 n 후 엔터= 삭제x
00 하위 디렉토리 및 파일을 포함하여 물어보지 않고 삭제 후 확인
'Linux' 카테고리의 다른 글
링크파일 (0) | 2017.06.02 |
---|---|
파일 및 디렉토리 관련 명령어2 (0) | 2017.06.01 |
리눅스 구조 및 개념 + 기본 설정 (0) | 2017.05.30 |
Xshell5 소개 및 원격접속 (0) | 2017.05.27 |
CentOS 소개 및 설치 (0) | 2017.05.25 |