0
사용자가 특정 디렉토리로 이동할 때 환경 변수를 만드는 스크립트를 실행하려고합니다.스크립트가있는 디렉토리로 전환 할 때 유닉스 스크립트의 실행을 트리거하는 방법
사용자가 특정 디렉토리로 이동할 때 환경 변수를 만드는 스크립트를 실행하려고합니다.스크립트가있는 디렉토리로 전환 할 때 유닉스 스크립트의 실행을 트리거하는 방법
어떻게 사용할지 예상하는 실제 사례가 있다면 도움이 될 것입니다.하지만 헤드 라인과 질문 본문을 기초로 시작하는 방법은 어떨까요?
cat specialVarSetter.bash
#! /bin/bash
targetDir=/path/to/special/dir
cd $1
if [[ $PWD == "$targetDir" ]] ; then
userVar1=xxxx
userVar2=yyyy
fi
#your real stuff goes after this
runProgram 1
runProgram 2
를 사용하여 당신은 단지 사용자가 '디렉토리'를 입력합니다
chmod 755 specialVarSetter.bash
specialVarSetter.bash /path/to/special/dir
처럼, 당신은 baseDir=/path/to/special
같은 것을 추가 할 수 cd $baseDir/$1
로 변경합니다. 테스트가 실행되고 변수가 설정됩니다.
또한 csh/tcsh에는 기본적으로 그러한 기능이있을 수 있으며 tcsh에 있으면 zsh에 포함될 것입니다 (어쨌든 가질 수 있음). 사용자 환경에 얼마나 많은 제어권이 있는지에 따라 다릅니다. (나는 CDPATH 또는 관련 이름이 뭔가를 생각하고 있나?, zsh 사람들, 조금 도움이 되니?)
나는 이것이 도움이되기를 바란다.
"cd"가 너무 많거나 쉘을 패치하는 것보다 짧습니다. 그렇게 할 수 없습니다. – pyroscope
"오버로드"할 수 있습니까 ?? 그것은 내장되어 있습니다. 별칭을 사용할 수는 있지만 매개 변수를 전달하는 방법은 무엇입니까? –