假设我的yaml文件中有此部分
hdkkhj50599: 1000000
504sdaaf54: 00000054
pppppp: 00005464
我想根据冒号后的值对这些行进行排序。
stackoverflow中没有一个建议的解决方案适合我。
我该怎么做?
答案 0 :(得分:6)
Vim的内部:sort
提供了你想要的选项:n
标志用于排序十进制数字(而不是按字母顺序排列,尽管在你的0填充示例中无关紧要),{开头跳过{1}}模式;我们非贪婪地匹配第一个冒号和空格:
/.../
答案 1 :(得分:1)
使用vim排序命令:
:sort /^.\{-}:/
您可以使用linux命令对其进行排序:
:%!sort -t: -k2
有关详情,请参阅:help sort
答案 2 :(得分:0)
如果您使用的是Linux,可以在vim中尝试以下操作(将调用外部排序命令)
:%!sort -g
显然你可以用你的行范围的定义替换%,例如:对于第5行到第10行,你会这样做:
:5,10!sort -g