⚡ 명령줄 경험을 강화하세요
.bashrc 및 .bash_profile 조직
아무리 강조해도 지나치지 않은 것은 쉘 세션이 시작될 때 로드되는 dotfile/구성 파일을 분할하는 것이 얼마나 편리한지입니다. 셸에 대해 조금 알고 있다면 아마도
.bashrc
및 .bash_profile
파일을 본 적이 있을 것입니다..bashrc
는 새 비로그인 셸이 열릴 때마다 실행됩니다(비로그인 셸은 이미 서버에 로그인한 다음 새 셸을 연 경우와 같습니다). .bash_profile
는 로그인 시 한 번 실행됩니다. 따라서 시스템에 ssh로 접속하거나 컴퓨터에 로그인할 때.일반적으로
.bashrc
에서 다음을 찾을 수 있으므로 모든 셸 구성이 .bash_profile
에 있을 수 있고 새 셸이 열릴 때 모든 것이 로드됩니다.[ -n "$PS1" ] && source ~/.bash_profile;
위의 작업을 수행하는 것이 좋지만
.bashrc
파일의 구성을 모듈식 청크로 분할하는 것이 더 낫다고 굳게 믿습니다. .bash_profile
상단 근처에 다음 블록을 추가하면 aliases
, exports
및 만들고자 하는 다른 분리에 대한 구성을 분할할 수 있습니다.# Load the shell dotfiles, and then some:
for file in ~/.{exports,aliases}; do
[ -r "$file" ] && [ -f "$file" ] && source "$file";
done;
unset file;
그런 다음 위의 방법으로
.aliases
및 .exports
파일을 생성하고 셸 시작 시 로드될 모든 구성으로 파일을 채울 수 있습니다..수출
exports
환경 설정을 시스템 및 시스템에서 실행되는 소프트웨어에 노출합니다. 특정 환경 변수를 변경하여 조정할 수 있는 가장 일반적으로 사용되는 도구에 사용할 수 있는 사용자 지정 수준에 놀랄 것입니다.다음은
.exports
또는 .bash_profile
에서 설정할 수 있는 몇 가지 환상적인 옵션입니다.Note: the following configuration can live in your
.bash_profile
as well if you didn't setup a separate.exports
file.
# Increase Bash history size. Allow 32³ entries; the default is 500.
export HISTSIZE='32768';
export HISTFILESIZE="${HISTSIZE}";
# Omit duplicates and commands that begin with a space from history.
export HISTCONTROL='ignoreboth';
# Prefer AU English and use UTF-8. - universal way of setting language
export LANG='en_AU.UTF-8';
export LC_ALL='en_AU.UTF-8';
.inputrc
.inputrc 파일은 대화형 셸 프로그램(예: Bash 및 Python)에 영향을 주는 다양한 사용자 지정 옵션을 제공합니다. GNU Realine library을 활용하는 모든 라이브러리는 .inputrc 파일에 포함된 사용자 정의를 채택할 수 있습니다.
놀랍게도 이 기능의 대부분은 기본적으로 비활성화되어 있습니다! 다음은 내가 사용하는 몇 가지 옵션과 그 기능에 대한 설명입니다.
# When pressing Tab autocomplete, match regardless of case
set completion-ignore-case on
# Use the text that has already been typed as the prefix for searching through
# commands (i.e. more intelligent Up/Down behavior)
"\e[B": history-search-forward
"\e[A": history-search-backward
# List all matches in case multiple possible completions are possible
set show-all-if-ambiguous on
.별칭
별칭은 명령 집합을 다른 단어/명령으로 변환
alias
할 수 있도록 셸 환경을 사용자 정의할 수 있는 매우 과소평가된 또 다른 방법입니다.다음은 별칭을 사용하여 쉘 사용 속도를 높이는 방법에 대한 몇 가지 좋은 예입니다.
Note: the following configuration can live in your
.bash_profile
as well if you didn't setup a separate.aliases
file.
# Easier navigation: .., ..., ...., ....., ~ and -
alias ..="cd .."
alias ...="cd ../.."
alias ....="cd ../../.."
alias .....="cd ../../../.."
alias ~="cd ~" # `cd` is probably faster to type though
alias -- -="cd -"
# Reload the shell (i.e. invoke as a login shell)
alias reload="exec ${SHELL} -l"
# Print each PATH entry on a separate line
alias path='echo -e ${PATH//:/\\n}'
# Enable aliases to be sudo’ed
alias sudo='sudo '
당신이 적용할 수 있는 또 다른 다채로운 변화! 다음 구성을 추가하면
ls
및 grep
의 출력 색상을 사용자 정의할 수 있습니다.# Detect which `ls` flavor is in use
if ls --color > /dev/null 2>&1; then # GNU `ls`
colorflag="--color"
export LS_COLORS='no=00:fi=00:di=01;31:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.ogg=01;35:*.mp3=01;35:*.wav=01;35:'
else # macOS `ls`
colorflag="-G"
export LSCOLORS='BxBxhxDxfxhxhxhxhxcxcx'
fi
# List all files colorized in long format
alias l="ls -lF ${colorflag}"
# List all files colorized in long format, excluding . and ..
alias la="ls -lAF ${colorflag}"
# List only directories
alias lsd="ls -lF ${colorflag} | grep --color=never '^d'"
# Always use color output for `ls`
alias ls="command ls ${colorflag}"
# Always enable colored `grep` output
# Note: `GREP_OPTIONS="--color=auto"` is deprecated, hence the alias usage.
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
위의 구성은 아래에서 볼 수 있습니다.
폴더는 빨간색, 실행 권한이 있는 파일은 녹색, 표준 파일은 회색으로 표시됩니다.
요약
정말 잘 작동하는 다른 멋진 명령줄 해킹이 있습니까? 트위터에서 나에게 연락하여 알려주고 보여주세요.
Reference
이 문제에 관하여(⚡ 명령줄 경험을 강화하세요), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/t04glovern/supercharge-your-command-line-experience-53bn텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)