LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1942|回复: 9

怎么把vi里复制的东西粘到命令行里

[复制链接]
发表于 2009-6-9 12:26:48 | 显示全部楼层 |阅读模式
先v y 复制了一些东西。
然后想把这些东西替换成B
:s/一些东西/B/g
打这个的时候怎么能复制上去?
发表于 2009-6-9 17:25:06 | 显示全部楼层
先用ctrl-r,指定用寄存器,然后按默认的寄存器",
  1. ctrl-r, "
复制代码
逗号是分隔符,不需要按, 如果用其他寄存器来保存复制的东西,就按其他字母。

vim 测试可以。 我的机子上的vi可能和你的不同。但是vim可以用。
回复 支持 反对

使用道具 举报

发表于 2009-6-11 18:13:07 | 显示全部楼层
这个东东挺实用的。

另外发现,想通过寄存器在两个vi中传递东西,得现在一个vi中将内容y到寄存器,然后再启动另外一个vi,有什么办法实现即时的传递么?

还有如何将vi的内容粘到另一个shell中?
回复 支持 反对

使用道具 举报

发表于 2009-6-12 16:52:53 | 显示全部楼层
我这说的是vim,
你可以用vi打开多个窗口,用sp 命令。或者用tab打开 tabe

要复制到其他shell里,要用到+寄存器。
回复 支持 反对

使用道具 举报

发表于 2009-6-12 16:59:10 | 显示全部楼层
vim中的+寄存器存放复制的字符后,如何在shell中粘贴?
回复 支持 反对

使用道具 举报

发表于 2009-6-14 19:09:16 | 显示全部楼层
按鼠标中键。不过似乎不支持中文?
我这里打开一个中文文档,复制后在opera里粘贴,全是乱码。
回复 支持 反对

使用道具 举报

发表于 2009-6-14 20:50:51 | 显示全部楼层
shell 默认paste是 shift+Insert, 这个说的是在图形界面,就是进入X后,现在大家所用的都是模拟shell。在Terminal 中用这样可以,

如果是纯文字的 tty1(init 3 level, 的文字界面),没有测试。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-6-15 09:19:56 | 显示全部楼层
明白了。谢谢。
回复 支持 反对

使用道具 举报

发表于 2009-6-15 09:25:40 | 显示全部楼层
目前了解到的可能有三种办法:

1. 安装gpm,利用鼠标中键完成
2. set -o vi (好像是这么设置),这样就可以用vi模式控制shell,默认的可能是emacs方式
3. 在vi中将内容复制到"*寄存器,然后用shell的粘贴功能,前提是设置好粘贴键。这个应该通过stty完成。
回复 支持 反对

使用道具 举报

发表于 2009-6-15 09:55:07 | 显示全部楼层
简单的,
X里,左键拖动选择,中键粘贴,通用的,一般虚拟终端还可用Shift+Insert粘贴,左键单击选择起始点,右键单击选择结束点
console下,用gpm,左键拖动选择,右键粘贴,用过一次中键后,变得和X下一样,中键粘贴,右键变成选择结束点

一直都是这样用

X里,只有从acroread里复制出来的中文是乱码,其它没发现
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表