如果我有这样的命令行:
sunday.exe monday tuesday-wednesday
我想删除到最后一个空格,或者说最后一个参数。我试过了Ctrl + Backspace
,但它只删除到第一个连字符。这可能吗?
答案1
要查看当前分隔符:
(get-PSReadLIneOption).WordDelimiters
要删除“-”字符(当前会话):
(get-PSREadLIneOption).WordDelimiters = (get-PSREadLIneOption).WordDelimiters -replace '-'
恢复默认设置:
(get-PSREadLIneOption).WordDelimiters = @'
;:,.[]{}()/\|^&*-=+'"–—―
'@
答案2
不是 PowerShell 中原生的东西。
您必须弄乱 PSReadline 自定义。
about_PSReadLine
倒退单词
将光标移回当前单词的开头,或者如果在单词之间,则移回上一个单词的开头。单词边界由一组可配置的字符定义。
Cmd:<Ctrl+左箭头> Emacs:<Alt+b>, <Escape,b> Vi 插入模式:<Ctrl+左箭头> Vi 命令模式:<Ctrl+左箭头>
请记住,PSReadline 只是一个控制台主机的东西,而不是需要单独配置或附加组件的 ISE 或 VSCode。