다른 종류의 shell에서 공통적으로 사용하는 옵션들
set -o
로 확인 가능
해시테이블 사용 여부. Default로 on
$ hash
명령어를 실행하면 쓰였던 명령어들이 나옴. 쉘은 이 명령어의 경로를 기억하고 다음에 실행할시 이를 참조함
jsg@jsg-ubuntu:~$ hash hits command 5 /bin/bash 1 /bin/chmod 1 /bin/rm 10 /bin/cat 29 /usr/bin/vim 3 /usr/bin/pkill 1 /bin/ls
명령어 | 설명 |
---|---|
type cmd | 명령어의 경로를 보여줌. 해시테이블에 있다면 표시 |
hash | 해시 테이블 목록 |
hash cmd | 해시 테이블에 cmd 추가 |
hash -r | 해시 테이블 초기화 |
hash -p path cmd | cmd 명령을 path 경로로 해시 테이블에 추가 |
jsg@jsg-ubuntu:~$ set +B jsg@jsg-ubuntu:~$ echo {a..g} {a..g} jsg@jsg-ubuntu:~$ set -B jsg@jsg-ubuntu:~$ echo {a..g} a b c d e f g
interactive 모드로 작동
안 건들이는것이 좋음
>
으로 덮어쓰기 금지
>|
로 강제로 덮어쓰기 가능
jsg@jsg-ubuntu:~$ echo $- himBH
=> interactive shell이고 -h -m -B -H 옵션이 켜져있음
옵션 | 설명 |
---|---|
shopt | 전체 옵션 리스트 |
shopt -s | on 되어 있는 옵션 리스트 |
shopt -s option | 옵션 on |
shopt -u | off 되어 있는 옵션 리스트 |
shopt -u option | 옵션 off |
shopt -p option | 현재 옵션에 해당되는 명령어 출력 |
shopt -q option | 옵션의 on/off 여부를 exit code로 반환 |
shopt -o option |
jsg@jsg-ubuntu:~$ shopt -s autocd jsg@jsg-ubuntu:~$ / cd / jsg@jsg-ubuntu:/$
jsg@jsg-ubuntu:~$ [[ word == WORD ]] && echo match jsg@jsg-ubuntu:~$ shopt -s nocasematch jsg@jsg-ubuntu:~$ [[ word == WORD ]] && echo match match
환경변수 TERM=xterm-256color 인 경우
$ PS1="\[\e[93m\][\D{%H:%M:%S}] \[\e[32m\] [\u@\h] \[\e[94m\]\w\[\e[m\] \$ "
와 같이 설정하면 PS1을 취향에 맞게 꾸밀 수 있음