通过sed传递链接参数

时间:2015-10-09 11:47:36

标签: bash sed

我正在尝试将图像链接插入到远程服务器上的wiki文件中。

ssh root@10.10.10.1 "sed -i -e '1i'[^http://10.10.10.2/image.jpg^]'\'" /var/www/wiki/page

可以工作,但是我需要在文件名后添加resize参数,但它不起作用,我如何考虑这些空格?

ssh root@10.10.10.1 "sed -i -e '1i'[^http://10.10.10.2/image.jpg height480 width=640^]'\'" /var/www/wiki/page
sed: can't read height480: No such file or directory
sed: can't read width=640^]\: No such file or directory

2 个答案:

答案 0 :(得分:2)

我不确定你为什么只引用'1i'。如果你有空格,你应该引用整个sed表达式。试试这个:

ssh root@10.10.10.1 "sed -i -e '1i[^http://10.10.10.2/image.jpg height480 width=640^]'" /var/www/wiki/page

答案 1 :(得分:1)

最好在这里使用heredoc以避免疯狂转义和其他问题,例如命令中的空格:

ssh -t -t root@10.10.10.1 <<'EOF'
sed -i '1i[^http://10.10.10.2/image.jpg height480 width=640^]' /var/www/wiki/page
exit
EOF
相关问题