bash上一条评论的第一个参数的简写是什么?最后是'$!'

时间:2014-01-21 11:11:56

标签: linux replace special-characters vi

首先表示的特殊字符是什么?

如果我们这样做

$ vi .bashrc
$ source !$

这个!$将被.bashrc取代 因为!意思是上一行(我是否正确?),$表示最后一个字(肯定)

那么第一个是什么?

我想在vi编辑器的每一行中插入一些字符串 :%s/find-key-word/replaced-keyword/g

在这里,如果我放 :%s/$/example/g 在vi编辑器中,它将以示例附加在所有行中。

我想在每一行的所有字符串前插入所有字符串。

我知道我可以使用视觉块(ctrl+v)并选择所有前线并插入(shift+i)插入一些单词并且escape(esc)也会这样做...但我想一次性完成..

请让我知道怎么做..

提前致谢

3 个答案:

答案 0 :(得分:1)

要指示行的开头,使用的符号为:

^

查看示例:

$ cat a
hello!
this is me
testing some
stuff
$ sed 's/^/XXX/' a
XXXhello!
XXXthis is me
XXXtesting some
XXXstuff

答案 1 :(得分:1)

有两个问题,所以你得到两种答案:)

bash命令历史记录与vi正则表达式语法只有相似的传递。

^是vi中行的开头。 $是vi中的行尾。

!!:0是在bash中访问上一个命令的第一个单词的一种方法

!$是在bash

中访问上一个命令的最后一个单词的一种方法

答案 2 :(得分:0)

您要找的角色是^

例如,:%s/^/example/g将在所有行前加上字符串example

在bash中,!^引用上一个命令的第一个参数,!$引用最后一个参数。