当我执行这些行时:
res1=$(curl -sSL http://ipecho.net/plain | xargs echo)
echo $res1
我得到了这个输出,这意味着我实际上能够将this webpage的内容放入变量中:
92.12.242.124
========================
现在,当我尝试使用another URL:
时res2=$(curl -sSL https://raw.github.com/n-marshall/system-setup/master/common/configs/.gitignore_global | xargs echo)
echo $res2
我得到了这个输出:
xargs: unterminated quote
有人能指导我将第二个链接的内容变成变量吗?谢谢。
(我的实际目标是将其复制/附加到本地文件,如果这会改变答案)
==================================
编辑:我也无法用wget实现同样的目标,但是任何带有wget的解决方案都是受欢迎的EDIT2:提供更多背景......
我正在寻找一种解决方案:
就像这个(附加但添加了分隔符):
append() {
if [ "$1" = "--separate" ]; then
[[ -s $3 ]] && printf "\n#----------------------------------------------------------------\n\n" | sudo tee -a $3
echo $2 | sudo tee -a $3
printf "\n" | sudo tee -a $3
else
echo $1 | sudo tee -a $2
fi
}
答案 0 :(得分:1)
如果您只想将curl
输出复制到本地文件,则不需要变量。只需将curl
命令重定向到您的文件:
curl -sSL https://raw.github.com/n-marshall/system-setup/master/common/configs/.gitignore_global > file
将输出附加到现有文件:
curl -sSL https://raw.github.com/n-marshall/system-setup/master/common/configs/.gitignore_global >> file
修改强>:
使用sudo
:
sudo bash -c 'curl -sSL https://raw.github.com/n-marshall/system-setup/master/common/configs/.gitignore_global > file2'