Dirstack: 인덱스는 0부터 시작합니다.

Dirstack: 인덱스는 0부터 시작합니다.

지쉬: 5.6.2

나는 Archwiki의 dirstack을 사용합니다:https://wiki.archlinux.org/index.php/zsh#Dirstack

스크립트의 모든 가 setopt켜져 있고 스크립트는 에서 시작됩니다 ~/.zshrc.

이전에는 작동했고 어떻게든 인덱스를 로 변경했습니다 0. afaik zsh의 배열은 1부터 시작해야 합니다.

현재 예상치 못한 출력 0:

dirs -v
0       ~/.cache/downloads/documents
1       ~
2       ~/.cache/zsh
3       ~/.zsh/scripts

CD를 사용해 보세요

cd -<tab>
0 -- ~/.zsh/scripts
1 -- ~/.cache/zsh
2 -- ~

1을 선택하면 ~/.cache/zsh 대신 ~/.zsh/scripts로 이동됩니다.

답변1

다음은 ~zsh 배열 변수의 인덱스가 아닙니다. 바라보다

info zsh 'Filename Expansion'

'~' 자체는 $HOME 값으로 대체됩니다. '+' 또는 '-'가 뒤에 오는 '~'는 각각 현재 또는 이전 작업 디렉토리로 대체됩니다.

"~" 뒤에 숫자가 오면 디렉터리 스택의 해당 위치에 있는 디렉터리로 대체됩니다. '~0'은 '~+'와 동일하며, '~1'은 스택의 최상위입니다. "~+" 뒤에 숫자가 오면 디렉터리 스택의 해당 위치에 있는 디렉터리로 대체됩니다. '~+0'은 '~+'와 동일하며, '~+1'은 스택의 최상위입니다. '~-' 뒤에 오는 숫자는 스택 맨 아래의 여러 위치에 있는 디렉터리로 대체됩니다. '~-0'은 스택의 맨 아래입니다. PUSHD_MINUS 옵션은 뒤에 숫자가 오는 "~+"와 "~-"의 효과를 바꿉니다.

실제로는 ksh_arrays또는 pushd_minus옵션을 활성화하지 않으면 동일한 콘텐츠 , 동일한 콘텐츠 및 동일한 콘텐츠 로 확장되는 동안 동일한 콘텐츠 ~1로 확장됩니다 .$dirstack[1]~0$PWD~-0$dirstack[-1]~-1$dirstack[-2]

관련 정보