![如何在每行的开头添加文本?](https://linux22.com/image/525165/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%AF%8F%E8%A1%8C%E7%9A%84%E5%BC%80%E5%A4%B4%E6%B7%BB%E5%8A%A0%E6%96%87%E6%9C%AC%EF%BC%9F.png)
如何在每行的开头添加文本?
例如:- 我有文件包含:- /var/lib/svn/repos/b1me/products/payone/generic/code/core /var/lib/svn/repos/b1me/products/payone/generic/code/fees /var/lib/svn/repos/b1me/products/payone/generic/code/2ds
我希望它变成:-
svn+ssh://svn.xxx.com.jo/var/lib/svn/repos/b1me/products/payone/generic/code/core svn+ssh://svn.xxx.com.jo/var/lib/svn/repos/b1me/products/payone/generic/code/fees svn+ssh://svn.xxx.com.jo/var/lib/svn/repos/b1me/products/payone/generic/code/2ds
换句话说,我想在此文件的每一行开头添加“svn+ssh://svn.xxx.com.jo”
答案1
如果您的文本是名为“file.txt”的文件,则使用此命令行
awk '{print "svn+ssh://svn.xxx.com.jo" $1}' file.txt
它将输出您想要的内容。(假设没有路径包含空格)
答案2
你可以在 Ex 模式下使用 Vim:
ex -sc '%s,^,svn+ssh://svn.xxx.com.jo,|x' filename
%
选择所有行s
代替x
保存并关闭
答案3
使用sed
:
sed 's|^|svn+ssh://svn.xxx.com.jo|' filename
要就地更改文件:
sed -i 's|^|svn+ssh://svn.xxx.com.jo|' filename