Grund ist, dass ich stattdessen ein ordentliches Skript erstellen möchte
cd /some/dir
cpio -whatever<somefile
cd -
In GNU cpio gibt es nichts, was dies zulässt. Dies könnte etwas sauberer sein:
(cd /some/dir && cpio -whatever < /some/file)
Durch die Verwendung der Subshell-Klammern bleibt das aktuelle Arbeitsverzeichnis des Skripts erhalten, und durch Verwendung von && wird sichergestellt, dass die CPIO-Extraktion nur durchgeführt wird, wenn Sie die Verzeichnisse erfolgreich in das Ziel ändern.
somefile
muss eigentlich hier wohnen/some/dir
. Ich habe es gerade versucht und es wurde gesagt, dass die Dateien nicht gefunden werden konnten. Sie müssen also entweder relative Pfade zurück zu den Dateien oder absolute Pfade verwenden.Ein bisschen mehr zu dem hinzufügen, was TCampbell getan hat:
(cp / some / file / some / dir && cd / some / dir && cpio -was auch immer <file && rm -f file)
quelle