這個正規表示式有效(去掉-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