從 zsh 完成選項中選擇目錄後如何保留尾部斜線?

從 zsh 完成選項中選擇目錄後如何保留尾部斜線?

桀騁,當我按兩次Tab 鍵進入“完成選單”,選擇目錄並按Enter 鍵時,它首先將帶有尾部斜杠的所選目錄添加到命令中,但是一旦我按空格鍵添加更多參數,它就會刪除它。

即按空格後“rsync foo/”改為“rsync foo”。

有沒有辦法禁用這種行為?

它迫使我總是手動為命令添加斜杠,例如同步尤其。

答案1

若要保留/完成後新增的目錄或目錄的符號鏈接,請關閉該選項auto_remove_slash預設情況下處於開啟狀態。

setopt no_auto_remove_slash

對於許多命令,保留尾部斜杠對目錄沒有影響,但如果參數是目錄的符號鏈接,則會導致命令作用於目標目錄而不是符號鏈接。對於 rsync 來源參數,尾部斜線會導致目錄合併到目標而不是複製到子目錄。

相關內容