我想从 LaTeX 启动一个 shell 脚本。在 shell 脚本中,我需要等到 .pdf 文件生成,然后我想用这个文件做一些事情。
Test.tex
因此我创建了一个这样的MWE :
\documentclass{article}
\immediate\write18{/myPath/script.sh}
\begin{document}
Test
\end{document}
shell 脚本script.sh
如下所示:
#!/bin/bash
until [ -f Test.pdf ]
do
sleep 5
done
echo "File found"
# Do SOMETHING
不幸的是,这似乎不适用于 TeXMaker。它似乎陷入了无限循环,而且 cmdsleep 5
似乎也让 TeXMaker 进入休眠状态。
顺便提一句
--shell-escape
已启用并chmod 755 script.sh
已设置。
编辑
现在我可以arara
在我的 MWE 中这样使用:
\documentclass{article}
% arara: pdflatex: {shell: yes,synctex: yes,interaction: nonstopmode}
\begin{document}
Test
\end{document}
但是如何告诉现在在生成 pdf 后arara
运行该脚本 ?\immediate\write18{/myPath/script.sh}