내가 OS 당, 기계 쉘 CONFIGS 당, 세계와 보관에 폴더가 :
$ ls ~/Dropbox/shell/bash
bashbootstrap bashrc
bashrc-Darwin bashrc-Darwin-laptopname bashrc-Darwin-mininame
bashrc-Linux bashrc-Linux-machineone bashrc-Linux-machinetwo
bashrc
이 bashrc-Linux
가, bashrc-Darwin
는 해당 운영체제에로드되는 모든 시스템에로드, 여러 CONFIGS가 특정 개별 머신으로. (그런데, 다윈은 OS X의 BSD와 비슷한 커널의 이름입니다.)
이 모든 것을 하나로 묶는 것은 bashbootstrap
파일입니다. 적용 가능한 각 설정 파일을 특이성이 증가하는 순서로로드합니다. 이렇게하면 OS 단위 및 컴퓨터 단위 재 지정이 더 높은 우선 순위를 가질 수 있습니다. 또한 누락 된 구성 파일을 자동으로 건너 뜁니다. 스크립트를 행복하게 유지하기 위해 각 컴퓨터에 대해 빈 구성 파일을 만들 필요가 없습니다. 새로운 기계에
는
~/Dropbox
에 드롭 박스를 설치 한 후, 나는 기본
.bashrc
을 벗어나 단지 대신 그 자리에 부트 스트랩 파일을 심볼릭 링크 :
$ mv ~/.bashrc ~/.bashrc.bak
$ ln -s ~/Dropbox/shell/bash/bashbootstrap ~/.bashrc
아, 그리고 여기에 bashbootstrap
파일의 내용입니다 :
if [ -z "$PS1" ]; then
return
fi
dropboxshelldir=~/Dropbox/shell
dropboxdir=$dropboxshelldir/bash
masterbashrc=$dropboxdir/bashrc
osbashrc=$masterbashrc-`uname`
localbashrc=$osbashrc-`hostname | cut -d. -f1`
echo -n "Applicable shell configs: "
for bashfile in "$masterbashrc" "$osbashrc" "$localbashrc"; do
if [ -r $bashfile ]; then
. $bashfile
echo -n "`basename $bashfile` "
fi
done
echo
# Set convenience aliases
myed=${VISUAL:-${EDITOR:-vim}}
alias editbashrc="$myed $masterbashrc"
alias editosbashrc="$myed $osbashrc"
alias editlocalbashrc="$myed $localbashrc"
마지막으로,이 스크립트는 저장 위치를 기억하지 않고도 Bash 구성 파일을 편집 할 때 편리한 별칭을 제공합니다.
editbashrc
: 편집 글로벌 설정 파일.
editosbashrc
: OS 고유의 구성 파일을 편집하십시오.
editlocalbashrc
: 컴퓨터 별 설정 파일을 편집하십시오.
나는 이것을 Bash에서만 테스트했지만 다른 Bash와 같은 쉘에서도 작동 할 수 있습니다. 그러나, 그들이 말한대로, 귀하의 마일리지는 다를 수 있습니다.
나는 here에 관한 블로그 게시물을 만들었습니다.