~/에 흔적을 남기지 않고 ~/.bashrc를 다른 곳으로 이동할 수 있는 방법이 있습니까(심볼릭 링크 등 없음)? Zsh가 환경 변수 ZDOTDIR을 사용하는 것처럼요?
이것내가 원하지 않는 것을 나에게 주십시오. 이는 --rcfile
터미널 프롬프트를 통해 새 셸을 초기화할 때만 작동하며, 새 터미널 에뮬레이터(또는 창 관리자의 경우 창)를 통해 시작할 때는 작동하지 않습니다.
답변1
ZDOTDIR
bash와 동등한 것이 있습니까 ?
아니요, 직접적으로 동등한 것은 없습니다.
~/.bashrc
흔적을 남기지 않고(심볼릭 링크 등 없음) 다른 곳으로 이동할 수 있는 방법이 있습니까?~/
예, HOME
환경 변수를 변경하여 이를 수행할 수 있습니다.
$ echo echo LOL >/tmp/.bashrc
$ HOME=/tmp bash
LOL
$
하나를 위해비대화형BASH_ENV
쉘에서는 환경 변수를 사용할 수 있습니다(1):
$ BASH_ENV=/tmp/.bashrc bash -c true
LOL
아니면이것.
이는
--rcfile
터미널 프롬프트를 통해 새 셸을 초기화할 때만 작동하며 새 터미널 에뮬레이터를 통해 시작하는 것처럼 작동하지 않습니다.
이것은 사실이 아닙니다. 대부분의(모두?) 터미널 에뮬레이터에서는 기본 셸 대신 실행할 명령과 인수를 선택할 수 있습니다.
(1)Bash 매뉴얼 페이지의 설명이 혼란스럽기는 하지만 POSIX BASH_ENV
모드에서 실행될 때 bash와 동일한 소스는 아닙니다.ENV
비대화형쉘이지만 후자는 다음으로 구성됩니다.인터렉티브껍데기. 어쨌든 둘 다 명령 확장이 가능하므로 이를 사용하여 명령을 직접 실행할 수 있습니다.
$ BASH_ENV='$(echo WTF >/dev/tty)' bash -c true
WTF
$ ENV='$(echo WTF >/dev/tty)' bash --posix -ic true
WTF