我正在尝试将图像链接插入到远程服务器上的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
答案 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