vi移动线条和单词

时间:2014-05-06 01:20:05

标签: unix vi ex

我正在上UNIX课程,不幸的是我的老师不是最好的......所以我需要你的帮助!

我有一个名为file1的文件,文字为:

Roger Mancuso
Xavier Allen
Paul Bibbens

我们的老师要我们做的是用一个命令首先将文件的顶行移到底部,这样看起来像:

Xavier Allen
Paul Bibbens
Roger Mancuso

然后使用ex命令我们必须取名字,然后将它们移到姓氏后面,并用逗号分隔它们:

Allen, Xavier
Bibbens, Paul
Mancuso, Roger

你们可以提供的任何帮助都会非常感激,我今天试着去我老师办公时间问他这个问题,他基本上告诉我迷路了,所以现在我不知道发生了什么事。 / p>

非常感谢你!

2 个答案:

答案 0 :(得分:2)

:m $ - 将当前行移至底部

:%s/\v(\w*) (\w*)/\2, \1/g - 第二部分

答案 1 :(得分:0)

第二部分怎么样?

:%s/\(.*\)\, \(.*\)/\2, \1/g

括号将它们匹配的内容保存到您可以作为\ 1 \ 2 \ 3等。

访问的变量中