관리 메뉴

NineTwo meet you

[리눅스 기초] 쉘 명령어 사용 본문

CS/리눅스

[리눅스 기초] 쉘 명령어 사용

NineTwo 2020. 7. 28. 21:48
반응형

메타 문자

쉘에서 특별한 의미를 가지는 일반 기호를 의미한다.


경로 이름 메타 문자

~

현재 로그인된 사용자의 홈디렉토리를 의미한다.

cd ~ 현재 사용자의 작업 디렉토리로 이동
cd ~userA userA라는 사용자의 작업 디렉토리로 이동
cd ~+ 현재 작업 디렉토리를 이동
cd ~- 이전 작업 디렉토리로 이동

-

이전 작업 디렉토리를 의미


파일 이름 대체 메타 문자

*

아무것도 없거나 하나 이상의 문자를 대체하는 문자로 사용됩니다.


?

하나의 문자를 대체하는 문자로 사용됩니다.


[]

하나의 문자를 대체하는 문자의 범위를 지정할 수 있으며 검색용으로 사용된다.

[문자1-문자3] ls file[A-Z] 연속된 문자를 검색시 사용한다. fileA, ... fileZ까지 검색된다. 
[문자1문자2...] ls file[ACRT] 연속되지 안은 문자를 사용한다. fileA, fileC, fileR fileT만 검색된다.

{}

하나의 문자를 대체하는 문자의 범위를 지정하며 만들때 사용된다.

{문자1..문자2} touch file{A..G} fileA,...fileG까지 각각의 파일이 생성된다.

인용 부호 메타 문자

메타부호를 다르게 하거나 무시하도록 하는 역할을 합니다.

$는 이름의 변수를 의미하는 메타문자이다.

예제 출력
#echo $USER root

''

모든 메타문자를 일반문자로 취급한다.

예제 출력
#echo '$USER' $USER

""

$, `,\을 제외한 나머지 메타문자를 일반 문자로 취급한다.

예제 출력
echo "$USER" root
echo "?USER*" ?USER*

`` (역 홑따옴표)

특정 명령어의 결과가 출력하도록 한다.

예제 출력
date 요일, 월 일, 년도 시간 UTC
echo `date` 요일, 월 일, 년도 시간 UTC
echo " the current time is $(date)" the current time is 요일, 월 일, 년도 시간 UTC

방향 재지정 메타 문자

입력장치 또는 출력 장치를 다른곳으로 재지정할 수있다.

쉘의 표준 입력 : 키보드 , 쉘의 표준 출력 : 모니터


파일 디스크립터

항목 파일 디스크립터 번호 파일 디스크립터 약어 표준 장치
표준 입력 0 stdin 키보드
표준 출력 1 stdout 모니터
표준 에러 2 stderr 모니터

표준 입력 재지정

command < filename
command 0< filename

표준 출력 재지정

> 기존에 존재하는 파일이라면 덮어쓴다.

command > filename
command 1> filename

>> 기존에 존재하는 파일이라면 파일의 내용 뒤에 내용이 추가된다.

command >> filename
command 1>> filename

표준 에러 재지정

/dev/null은 null장치라고 부르는 특수 장치 파일이다.

이 파일은 데이터를 무시하거나 버리기위해 사용되는 블랙홀과 같은 역할을 하도록 사용되는 장치파일이다.

command 2> /dev/null

파이프 문자

명령어의 표준 출력을 또 다른 명령어의 표준 입력으로 받게한다.

command | command

명령어 히스토리

쉘은 최근에 실행한 명령어를 버퍼에 저장하는 데 이를 명령어 히스토리라고 한다.


history

history 옵션

최근에 실행한 명령어의 목록을 보여주는 명령어다.

korn shell - 16개의 명령어 목록을 보여준다.

Bash shell - 500개의 명령어 목록을 보여준다.


[Korn Shell]

history -n 방금 실행한 명령어를 포함(history -n)하여 n개를 출력
history -r 최근 실행한 명령어를 역순으로 출력
history 명령어1 명령어2 최근 명령어1부터 명령어2까지 출력
r 최근 실행한 명령어 재실행
r 패턴 최근 명령어 중 특정 패턴의 명령어 재실행
r n 해당 n번째의 명령어 재실행

[Bash Shell]

history 실행한 실행한 명령어들을 출력
history n 방금 실행한 명령어를 포함(history -n)하여 n개를 출력
!! 최근 실행한 명령어 재실행
!n 해당 n번째의 명령어 재실행
ctrl+R키
명령어
history 버퍼에서 최근 실행한 명령어를 검색
검색된 명령어를 enter치면 해당 명령어가 실행됨

사용자 초기화 파일

작업환경을 커스터마이징하기 위해서 몇몇 파일의 내용을 수정해야 합니다.


/etc/profile

root에 의해 관리되며 시스템 전역에 걸쳐 환경을 설정하는 파일이다.


~/.profile

개별 사용자 홈 디렉토리의 .profile파일을 해당 사용자가 로그인시 적용되는 최기화 파일이다.


~/.kshrc

Korn Shell 실행 시  실행하는 초기화 파일이며, 일반적으로 다음과 같은 일을 수행한다.

  • Shell 프롬프트 모양 정의

  • Alias 정의

  • Shell 기능 정의

  • History 변수 정의

  • Shell 옵션 정의


~/.bashrc 또는 ~/.bash_profile

Bash Shell 실행 시 실행하는 초기화 파일이며, 두 파일은 이름은 다르지만 같은 기능을 수행한다.

.kshrc와 같은 성격을 가진다.

반응형
Comments