我正在使用 Emacs Org-Mode ,并且尝试使用 wget 从网络上获取图片并将其显示为代码块结果中的嵌入式图像。因此,我编写了以下代码块:
#+BEGIN_SRC bash :results file :file ~/image.jpg
url='https://gist.githubusercontent.com/brettlangdon/85942af486eb79118467/raw/2a7409cd3c26a90b2e82bdc40dc7db18b92b3517/06b3FMA.jpg'
wget "$url" -O ~/image.jpg
#+END_SRC
#+RESULTS:
[[file:~/image.jpg]]
但是,图像不会显示并损坏。在控制台中,我得到:
JPEG文件过早结束
答案 0 :(得分:1)
#+BEGIN_SRC bash
url='https://gist.githubusercontent.com/brettlangdon/85942af486eb79118467/raw/2a7409cd3c26a90b2e82bdc40dc7db18b92b3517/06b3FMA.jpg'
wget "$url" -O ~/image.jpg
#+END_SRC
执行脚本,将指定的URL下载到~/image.jpg
#+BEGIN_SRC bash :results file :file ~/image.jpg
url='https://gist.githubusercontent.com/brettlangdon/85942af486eb79118467/raw/2a7409cd3c26a90b2e82bdc40dc7db18b92b3517/06b3FMA.jpg'
wget "$url" -O ~/image.jpg
#+END_SRC
执行脚本,将指定的URL下载到~/image.jpg
,然后将shell命令的标准输出写入~/image.jpg
(我希望您留下一个 empty 文件,因为wget将信息写入stderr)。
因此,您可以使用第一种方法,并独立于代码块来包含图像链接;或者,如果您想在:results
中捕获下载的图像数据,则需要告诉wget写入标准输出。
#+BEGIN_SRC bash :results file :file ~/image.jpg
url='https://gist.githubusercontent.com/brettlangdon/85942af486eb79118467/raw/2a7409cd3c26a90b2e82bdc40dc7db18b92b3517/06b3FMA.jpg'
wget "$url" -O -
#+END_SRC