본문 바로가기
공부/Shell

[따배쉘] 3. Bash shell 과 Rules(1)

by 열두시공삼분 2024. 9. 7.

※ 본 내용은 따배런님의 영상을 기반으로 하였습니다.

개인적인 정리이기 떄문에 명령어 관련해서 오류가 있을 수 있음

 

 

 

1. Quoting Rule

2. Nesting commands

3. Alias

4. Prompt

 

 

1.Quoting Rule

Metacharacters

- Shell에서 특별히 의미를 정해놓은 문자들

- ? {} $ ... * %  () [] 등

 

Quoting Rule : 메타문자의 의미를 제거하고 단순 문자로 변경

- Backslash(\)

 - \ 바로 뒤의 메타 문자만 특별한 의미를 제거

Double Quotes(" ")

 - " " 내의 모든 메타문자의 의미를 제거. 단 $, ` ` 은 제외

Single Quotes('')

- ' ' 내의 모든 메타문자의 의미를 제거

ls

echo *  (* All Character 의미, 전체 파일)

 

echo B* (B로 시작하는 파일을 모두 보여줘!)

 

단어를 찾을 때 유용하게 사용

echo *a , ehco *a*, echo ?????, echo B??????

 

파일 생성시 {1..3} 같이 사용시 순차적으로 생성

 

 

 

 

 

2. Nesting commands

Command 치환

 - 명령어의 실행 결과를 치환하여 명령을 실행

 

Nesting Commands

$(command)

'command'

 

$ echo "Todaty is $(date)"

$ echo "Today is `date`"

다 동일

 

커맨드 명령 실행 후 echo 명령어 실행 

 

 

date --help 

date 와 관련된 옵션들을 모두 보여줌

추가 옵션을 붙일 수 있음

 

date +%Y%m%d  날짜 형태를 지정

 

Nesting Command를 사용해서 출력할 수 있음

 

 

alias

- Shell의 명령에 새로운 이름을 부여

- 명령들을 조합하여 새로운 이름의 명령을 생성

 

alias 관리 명령

 - alias 등록 : alias name='command'

 - alias 확인 : alias or alias name

 - alias 삭제 : unalias name

 

alias 현재 등록된 모든 alias 출력

 

 

ll -> ls -alF (파일을 자세하게 출력)

F는 파일의 속성을 의미 '/' 로 끝나면 디렉토리 '*'로 끝나면 실행파일 의미

 

alias 하나만 찾고 싶을 때 

alias [이름] 

 

 

clear 명령어를 'c' 단축키로 등록 후 사용

 

 

rm 명령어를 그냥 사용하면 사용자 동의없이 바로 실행

rm -i [파일명] 사용시 재차 확인

-i 권장사용

 

rm='rm -i' 도 alias 등록

 

history (과거 사용했던 명령어 출력)

이것도 alias 등록 후 사용

 

alias 삭제 예시

 

 

whoami <- 로그인되어있는 유저

 

 

user : 유저

ubuntu : 호스트네임

~ 현재 작업 디렉토리

 

3.Shell의 Prompt란?

 - PS1 변수를 이용해 shell의 기본 프로프트 모양을 설정

 - Bash shell에서만 Prompt 모양에 적용가능한 특수문자가 존재

 

특수 문자 의미
/h 호스트 이름
/u 사용자 이름
/w 작업 디렉토리 - 절대경로
/W 작업 디렉토리 - 상대경로
/d 오늘 날짜
/t 현재시간
/$ $ 또는 #프롬프트 모양

 

디렉토리 변경시 작업할 수 있는 Prompt 공간이 적어짐

 

echo $PS1 <= 현재 Prompt 모양

 

 

 

프롬프트 모양을 변경한다

PS1=[\u@\h \W]\$

 

alias나 PS1 같이 환경변수를 설정되고 유지되는 건 현재 쉘이 살아있는 동안만 유지

로그아웃시 다 초기화됨

 

그러므로 계속 유지하고 싶을 시 .bashrc 파일에 직접 넣어줘야 함

 

 

exit 후 다시 재실행또는 로그인 시 적용

 

'공부 > Shell' 카테고리의 다른 글

[따배쉘] 4. Bash shell과 Rules(2)  (0) 2024.09.10
[따배쉘] 2. Bash shell과 변수  (0) 2024.09.07
[따베쉘] 1. Linux Shell이란?  (0) 2024.09.07
[따배쉘] linux Shell Programming Go~  (0) 2024.09.04