따라서 현재 작업 디렉터리는 다음과 같습니다.
/home/oleg/.nvm/versions/node/v7.2.1/lib/node_modules
Bash 스크립트를 사용하여 해당 디렉터리가 내 사용자의 홈 디렉터리에 있는지 확인하고, 그렇다면 다음도 확인하고 싶습니다.
/home/$USER/<dir> ==? /home/$USER/.nvm
즉, 내 사용자 홈 디렉터리 아래 경로의 첫 번째 디렉터리 이름이 ".nvm"인지 확인합니다.
이를 수행하는 가장 좋은 방법은 무엇입니까? (이상적으로는 MacOS에서도 작동합니다.)
내가 정말로 해야 할 일은
//의사 bash:
assert(String($PWD).startsWith("$HOME/.nvm"))
하지만 bash에서 이 작업을 수행하는지는 확실하지 않습니다.
답변1
하다:
[[ $PWD =~ ^$HOME/\.nvm/ ]] && echo "In .nvm"
[[ $PWD =~ ^$HOME/\.nvm/ ]]
홈 디렉터리로 시작 하는지 확인 하고$PWD
키워드에.nvm/
Regex(=~
) 를 사용하세요.[[
(
&&
)이면 다음echo "In .nvm"
을 실행합니다.
지원 되지 않는 경우 =~
(예: 이전 버전을 사용하는 경우 bash
) 대신 globbing을 사용하세요.
[[ $PWD = $HOME/.nvm/* ]] && echo "In .nvm"