我有一个文件由于末尾的单个回车符 (0x0D) 而失败。它最初是一个回车/换行组合(0x0D,0x0A)。我试过了:
%s/\r//
( E486: Pattern not found: \r
)%s/^M//
(Ctrl+V, Ctrl+M 得到^M
) ( E486: Pattern not found: ^M
)J
加入下一行(似乎对最后一行没有任何作用)所有这些都保留回车符。
我怎样才能从内部vi
(不是vim
)摆脱这个角色?
现在看来,每当我保存文件时,它都会添加一个新行字符(0x0A)。所以,0x0D 消失了,但我的文件末尾仍然有一个无效字符。
我尝试添加两个空行以查看它是否会添加 0x0A 或 0x0D、0x0A(我使用的是 Windows 中的 PuTTY)并添加了两个 0x0A 字符,总共三个。
如果你有三行,你不应该只需要两个行分隔符吗?
%s/\n//
(没有错误,但不会删除字符)在 bash 脚本中,为什么
message='123456789'
echo "${message//[0-9]/*}"
Run Code Online (Sandbox Code Playgroud)
展示*********
但
message='123456789'
echo "${message//./*}"
Run Code Online (Sandbox Code Playgroud)
显示123456789
?
我见过的所有文档都说.
匹配正则表达式中的任何字符,甚至在 bash 中,但它对我不起作用。如何匹配 bash 中的任意字符?