![为什么 tikzexternalize 无法写入上面的目录](https://linux22.com/image/475300/%E4%B8%BA%E4%BB%80%E4%B9%88%20tikzexternalize%20%E6%97%A0%E6%B3%95%E5%86%99%E5%85%A5%E4%B8%8A%E9%9D%A2%E7%9A%84%E7%9B%AE%E5%BD%95.png)
我使用命令
\tikzexternalize[prefix=../figures-tikz/]
我收到了错误信息 !我无法在文件“../figures-tikz/BQ-m-meca_0.md5”上写入。
另一方面,如果我写下命令
\tikzexternalize[prefix=figures-tikz/]
没问题。
如何强制 tikzexternalize 写入“../图形-tikz/“ 目录?
我使用 Xelatex 和 Shell-escape 进行编译
答案1
texlive 的默认安全策略(在 中设置texmf.cnf
)是
% Do we allow TeX \input or \openin (openin_any), or \openout
% (openout_any) on filenames starting with `.' (e.g., .rhosts) or
% outside the current tree (e.g., /etc/passwd)?
% a (any) : any file can be opened.
% r (restricted) : disallow opening dot files
% p (paranoid) : as `r' and disallow going to parent directories, and
% restrict absolute paths to be under $TEXMFOUTPUT.
openin_any = a
openout_any = p
因此您无法打开父目录中的文件进行写入。
您可以更改它,或者在父目录中更简单地启动 tex。