假设我的yaml文件中有这个部分
hdkkhj50599: 1000000
504sdaaf54: 00000054
pppppp: 00005464我想根据冒号后面的值对这些行进行排序。
在stackoverflow中提出的解决方案没有一个对我有用。
我该怎么做呢?
发布于 2017-01-25 11:40:07
Vim的内部:sort为您提供了所需的选项:n标志用于对十进制数进行排序(而不是按字母顺序排序,尽管在0填充的示例中并不重要),在开头跳过/.../模式;我们不贪婪地匹配第一个冒号和空格:
:sort n/.\{-}: /发布于 2017-01-25 11:36:43
使用vim排序命令:
:sort /^.\{-}:/您可以使用linux命令对它们进行排序:
:%!sort -t: -k2有关更多信息,请参见:help sort
发布于 2017-01-25 11:29:32
如果您在linux上,可以在vim中尝试以下操作(将调用外部排序命令)
:%!sort -g显然,您可以用您的行的定义替换%,例如:对于第5行到第10行,您可以这样做:
:5,10!sort -ghttps://stackoverflow.com/questions/41850336
复制相似问题