Dies ist der Code, der einwandfrei funktioniert:
\documentclass{article}
\usepackage{shellesc}
\begin{document}
\begin{tabular}{lr}
hello!
&
\ShellEscape{/bin/echo 'hello!' > a.tex}
\input{a}
\\
\end{tabular}
\end{document}
Wenn ich jedoch tabularx
anstelle von verwende tabular
, wird die Kompilierung bei folgendem beendet \input
:
\documentclass{article}
\usepackage{tabularx}
\usepackage{shellesc}
\begin{document}
\begin{tabularx}{\textwidth}{lr}
hello!
&
\ShellEscape{/bin/echo 'hello!' > a.tex}
\input{a}
\\
\end{tabularx}
\end{document}
Was ist falsch und wie kann ich das Problem beheben?
Antwort1
GefolgtKommentar von David Carlisleman kann testen ob die Datei existiert und sie nur dann eingeben. Die Tabellenzelle wird dann beim letzten Durchlauf ausgefüllt.
\documentclass{article}
\usepackage{tabularx}
\usepackage{shellesc}
\begin{document}
\begin{tabularx}{\textwidth}{lr}
hello!
&
\ShellEscape{/bin/echo 'hello!' > a.tex}
\IfFileExists{./a.tex}{\input{a}}{}
\\
\end{tabularx}
\end{document}