zsh 정규식 실패, 버그 또는 사용자 오류?

zsh 정규식 실패, 버그 또는 사용자 오류?

이 정규식은 작동합니다(제거 -search).

[~%]for i  in foo*-search-aae-status ; do echo $i(:s/-search//) ; done
foo1-aae-status
foo2-aae-status
foo3-aae-status
foo4-aae-status
foo5-aae-status

하지만 이 정규식은 (모든 것을 제거하려고 시도 -하지 않음)

[~%]for i  in foo*-search-aae-status ; do echo $i(:s/-*//) ; done
foo1-search-aae-status
foo2-search-aae-status
foo3-search-aae-status
foo4-search-aae-status
foo5-search-aae-status

뭔가 빠졌나요? 시도했지만 .*무시됩니다.

답변1

freenode irc의 llua에게 감사드립니다.

hist_subst_pattern을 활성화하면 당신이 하려는 일을 할 수 있을 것 같아요

[%]setopt hist_subst_pattern
[%]print $TXT:s/-*//
foo1

관련 정보