如何在 LyX2.3.2 中从批处理中获取路径?

如何在 LyX2.3.2 中从批处理中获取路径?

我在 Windows 10 中使用 LyX 并搜索以显示文件 .tex 的放置路径,该文件应该放在不同的地方并由不同的用户使用。我试着解释我搜索的目的是什么:我有这个文件.tex我想把它放置的完整路径放在哪里,例如C:\用户\名称\latex 文件\file.tex。所以我尝试放入“LaTeX Preamble”中:

\usepackage{shellesc}
\usepackage{import}
\usepackage{pdftexcmds}

\immediate\write18{batch 'dir' > temp.tex}

为了能够使用外部程序,我已经进行了以下操作--shell-escape

Tools->Preferences..->File Handling->Converts

并且在“LaTeX (pdflatex) -> PDF (pdflatex)“ 写在转换器 pdflatex --shell-escape $$i。您怎么能看出我使用了一个临时文件,其中存放了批处理命令的输出。因此我预计,在启动文件.tex,在温度.tex这:
C:\用户\名称\latex 文件\file.tex

我知道 LaTeX 不喜欢像‘\’这样的字符,所以我编写了一个 script.bat 来将‘\’替换为‘-’(我知道它看起来不太好看):
Powershell -NoProfile -ExecutionPolicy Bypass -Command "(Get-Content temp.tex -ReadCount 0) -replace [regex]::Escape('\'),'-' | Set-Content temp.tex"

我尝试用 LaTeX 编写来执行这个文件:

\immediate\write18{batch script.bat}

或者:

\execute{.\script.bat}


之后在我的温度.tex我期望类似的东西:
C:-用户名-latex 文件-文件.tex
为了在 file.tex 的 pdf 上显示它,我将其放入一个带有 TEX 代码(CTRL+L)的框中:

\input{temp.tex}

这个解决方案不起作用。我在 stackexchange 和其他论坛上阅读了很多其他问题,但没有一个能解决问题...肯定是我做错了什么,但我不知道是什么。我希望有人能帮助我,谢谢。

相关内容