Dein Code funktioniert auch nicht, wenn man die Datei als
Test.tex speichert. Im ersten Lauf
pdflatex -shell-escape Test
wird dann zunächst der
\else-Teil ausgeführt. Darin erfolgt der Aufruf
pdflatex -recorder -shell-escape -jobname=Test-Booklet Test
In diesem Lauf wird dann
\includepdf[pages={4,1}, nup=2x1]{Test} aufgerufen. Zu dem Zeitpunkt ist aber der erste LaTeX-Aufruf noch nicht beendet, weshalb
Test.pdf noch gar nicht existiert.
Die Frage ist auch schon im Ansatz falsch. Dass
\KOMAoption{paper}{a4,landscape} etwas macht, kannst Du nämlich einfach dadurch ermitteln, dass Du vor
\includepdf noch selbst eine Seite erzeugst. Daher würde ich auf jeden Fall probieren, das Papierformat vor dem Laden von
pdfpages einzustellen oder bei den Optionen von
pdfpages (Stichwort
autoscale,
fitpaper,
pagetemplate,
templatesize …) ein wenig spielen, in der Hoffnung, dass
pdfpages die Änderung des Formats mitbekommt. Jedenfalls funktioniert
\documentclass [paper=a5] {scrartcl}
\def\SinglePagesName{test-SinglePages}
\makeatletter\@onelevel@sanitize\SinglePagesName\makeatother
\edef\cmdname{\jobname}
\makeatletter\@onelevel@sanitize\cmdname\makeatother
\ifx\cmdname\SinglePagesName
\typeout{\jobname\space = \SinglePagesName}
\begin{document}
\Huge Seite 1\newpage
Seite 2\newpage
Seite 3\newpage
Seite 4\newpage
\else
\typeout{\jobname\space != \SinglePagesName}
\usepackage{shellesc}
\ShellEscape{pdflatex -recorder -shell-escape -jobname=\SinglePagesName\space \jobname}
\KOMAoption{paper}{a4,landscape}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={4,1}, nup=2x1]{\SinglePagesName}
\includepdf[pages={2,3}, nup=2x1]{\SinglePagesName}
\fi
\end{document}
wobei die Datei jeden beliebigen Namen außer
test-SinglePages.tex haben darf. Das Ergebnis findet man dann im PDF mit dem gleichen Basisname (also
nicht in
test-SinglePages.pdf).
Ebenso geht natürlich:
\documentclass[paper=landscape] {scrartcl}
\def\SinglePagesName{test-SinglePages}
\makeatletter\@onelevel@sanitize\SinglePagesName\makeatother
\edef\cmdname{\jobname}
\makeatletter\@onelevel@sanitize\cmdname\makeatother
\ifx\cmdname\SinglePagesName
\KOMAoptions{paper=a5,paper=portrait,DIV=calc}
\typeout{\jobname\space = \SinglePagesName}
\begin{document}
\Huge Seite 1\newpage
Seite 2\newpage
Seite 3\newpage
Seite 4\newpage
\else
\typeout{\jobname\space != \SinglePagesName}
\usepackage{shellesc}
\ShellEscape{pdflatex -recorder -shell-escape -jobname=\SinglePagesName\space \jobname}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={4,1}, nup=2x1]{\SinglePagesName}
\includepdf[pages={2,3}, nup=2x1]{\SinglePagesName}
\fi
\end{document}
oder gleich
\def\SinglePagesName{test-SinglePages}
\makeatletter\@onelevel@sanitize\SinglePagesName\makeatother
\edef\cmdname{\jobname}
\makeatletter\@onelevel@sanitize\cmdname\makeatother
\ifx\cmdname\SinglePagesName
\documentclass[paper=a5] {scrartcl}
\typeout{\jobname\space = \SinglePagesName}
\begin{document}
\Huge Seite 1\newpage
Seite 2\newpage
Seite 3\newpage
Seite 4\newpage
\else
\typeout{\jobname\space != \SinglePagesName}
\documentclass[paper=landscape]{scrartcl}
\usepackage{shellesc}
\ShellEscape{pdflatex -recorder -shell-escape -jobname=\SinglePagesName\space \jobname}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages={4,1}, nup=2x1]{\SinglePagesName}
\includepdf[pages={2,3}, nup=2x1]{\SinglePagesName}
\fi
\end{document}
Das Problem ist hier also eindeutig einerseits
pdpages das geänderte Papierformat zu vermitteln und natürlich die fehlerhafte Logik in Deinem Originalcode.