oh-my-zsh를 설치한 후에는 그러한 파일이나 디렉터리가 없습니다.

oh-my-zsh를 설치한 후에는 그러한 파일이나 디렉터리가 없습니다.

방금 oh-my-zsh를 설치했습니다. 일이 잘 진행되고 있습니다. 그런 다음 댓글을 달았습니다.export ZSH="~/.oh-my-zsh"

나중에 해당 줄의 주석 처리를 해제하면 다음 오류가 계속 발생합니다. 하지만 "oh-my-zsh.sh"가 존재합니다.

(base) abc@def-MacBook-Pro .oh-my-zsh % source $ZSH/oh-my-zsh.sh
source: no such file or directory: ~/.oh-my-zsh/oh-my-zsh.sh

(base) abc@def-MacBook-Pro .oh-my-zsh % ls -l ~/.oh-my-zsh/oh-my-zsh.sh
-rwxr--r--  1 abc  staff  5927 Feb 11  2022 /Users/abc/.oh-my-zsh/oh-my-zsh.sh

답변1

이는 변수를 인용할 때(작은따옴표, 큰따옴표, 백슬래시 등을 포함한 모든 종류의 인용 메커니즘 사용) ~변수 값이 확장되지 않기 때문입니다.$HOME$'...'

따라서 대신 다음 명령을 사용할 수 있습니다.

export ZSH=~"/.oh-my-zsh"

또는

export ZSH=~/.oh-my-zsh

또는

export ZSH="$HOME/.oh-my-zsh"

일반적으로 다음 중 하나 ~이후에는 확장이 발생하지 않습니다 =.

$ echo x=~
x=~

magicequalsubst이 옵션이 활성화되지 않은 경우 :

$ set -o magicequalsubst
$ echo x=~
x=/home/me

그러나 작업에서는 확장됩니다.

$ x=~
$ echo "$x"
/home/me

상대적으로 최신 버전에서는 zsh변수 export할당 및 기타 내장 함수가 이중 내장/키워드로 처리되며 해당 인수는 할당으로 구문 분석됩니다.

답변2

왜 이런 일이 일어나는지 아직도 확신합니다. 그러나 oh-my-zsh를 다시 설치하면 문제가 해결될 수도 있습니다.

관련 정보