- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试在 Python 2.4.4 的 .tex 文件上运行 pdflatex。子进程(在 Mac 上):
import subprocess
subprocess.Popen(["pdflatex", "fullpathtotexfile"], shell=True)
实际上什么都不做。但是,我可以在终端中毫无问题地运行“pdflatex fullpathtotexfile”,生成 pdf。我错过了什么?
[编辑]正如其中一个答案所建议的那样,我尝试过:
return_value = subprocess.call(['pdflatex', '/Users/Benjamin/Desktop/directory/ON.tex'], shell =False)
失败:
Traceback (most recent call last):
File "/Users/Benjamin/Desktop/directory/generate_tex_files_v3.py", line 285, in -toplevel-
return_value = subprocess.call(['pdflatex', '/Users/Benjamin/Desktop/directory/ON.tex'], shell =False)
File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/subprocess.py", line 413, in call
return Popen(*args, **kwargs).wait()
File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/subprocess.py", line 543, in __init__
errread, errwrite)
File "/Library/Frameworks/Python.framework/Versions/2.4//lib/python2.4/subprocess.py", line 975, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
该文件确实存在,我可以在终端中运行 pdflatex/Users/Benjamin/Desktop/directory/ON.tex
。请注意,pdflatex 确实会发出大量警告......但这无关紧要,这也会产生相同的错误:
return_value = subprocess.call(['pdflatex', '-interaction=batchmode', '/Users/Benjamin/Desktop/directory/ON.tex'], shell =False)
最佳答案
使用便捷功能,subprocess.call
您不需要在这里使用Popen
,call
就足够了。
例如:
>>> import subprocess
>>> return_value = subprocess.call(['pdflatex', 'textfile'], shell=False) # shell should be set to False
如果调用成功,return_value
将设置为 0,否则为 1。
Popen
的使用通常用于需要存储输出的情况。例如,您想使用命令 uname
检查内核版本并将其存储在某个变量中:
>>> process = subprocess.Popen(['uname', '-r'], shell=False, stdout=subprocess.PIPE)
>>> output = process.communicate()[0]
>>> output
'2.6.35-22-generic\n'
同样,永远不要设置 shell=True
。
关于python - mac 上 python 子进程中的 pdflatex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4230926/
我正在尝试每 90 秒从 Markdown 文档生成一个 pdf 文档。我已经在 launchd 中设置了一个任务来为我处理这个问题。不幸的是,我收到一条错误消息,提示无法找到 pdflatex,即使
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 8 年前关闭。 Improve th
我正在尝试使用图形覆盖,以免自己为每张幻灯片创建不同的图像。叠加层适用于我包含的任何文本,但不适用于图形。例如: \setbeamercovered{dynamic} \begin{figure}\r
我想让一些文本看起来是半透明的,但不是以叠加方式(它最终变成实心)只是永久半透明。更复杂的是,有问题的文本是 matrix 的一部分。 : $ \begin{matrix} & \
我想找到一种在 pdfLaTeX 中生成首字下沉(大首字母几行高)的方法。我知道有一个 dropping与 latex 一起使用时效果很好的包+ dvips .但是,当与 pdflatex 一起使用时
不确定这是一个编程问题,但我们所有 API 文档和用户文档都使用 LaTeX,所以我希望它会通过。 有人可以解释一下使用 pdflatex 的相对优点是什么吗?与“经典”技术相反 latex foo
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭10 年前。 Improve th
我有一篇论文,我想使用\part 命令将其中的一些章节组合在一起。 我想要的是: 第 1 章 第一部分 第 2 章 第 3 章 第二部分 第 4 章 第 5 章 第 6 章 所以最后一章应该再次与其他
我有一个脚本,可以生成许多数字并将它们放入报告的附录中,例如 Appendix ******** .. figure:: images/generated/image_1.png .. figure:
在 Ubuntu 10.4LTS 上,我尝试使用 microtype包装在 memoir 中文档类,例如: \usepackage[final,expansion=true]{microtype} 但
我目前正在使用 Rstudio 和 R markdown 创建 pdf。但是,每次我尝试编织这些错误消息时都会出现: ! Sorry, but C:\Users\AP\AppData\Local\Pr
假设我有一个可以像网页一样访问的 PDF 页面(由 PDFLaTeX 生成)。是否可以以类似于 HTML 页面的方式在其上放置跟踪代码(用于使用情况分析)? 最佳答案 试试这个:https://git
我已经在 Ubuntu 上安装了我的 Shiny 服务器。此外,我还在服务器上安装了 Texlive-full 2017。问题是从服务器上的 Shiny 应用程序下载报告不起作用(在我的本地计算机上工
当我在 Mac 上使用 render{rmarkdown} 从 .Rmd 文件生成 pdf 文件时,出现错误消息 pandoc:未找到 pdflatex。 pdf输出需要pdflatex。 错误:pa
我正在将电子书文件转换为电子阅读器优化的 pdf 文件(索尼电子阅读器无法正确证明文本的合理性)。因此,我将 html 转换为 latex ,然后使用 pdflatex 构建 latex 输出。 索尼
我要生成一系列 pdf 文件,其内容将在 Python (2.7) 中生成。一个常规的解决方案是将 .tex 内容保存在某个目录中,在文件上调用 pdflatex,之后读取 pdf 文件,以便最终将文
我想在没有空间的情况下让 AB 更近: ------ ------ ---------- ------------ | | | |
已关闭。这个问题是 off-topic 。目前不接受答案。 想要改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 已关闭10 年前。 Improve th
我想在 matlab 中调用 pdflatex。代码如下 clc; % analysis i = 10; n = 'Ashwani Roy'; x = 1:0.5:100; y = sin(x.^2)
我使用 RStudio(版本 3.1.2)。当我尝试在 R Markdown 脚本中编织 PDF 时,我收到以下输出: Error in eval(expr,envir,enclos): object
我是一名优秀的程序员,十分优秀!