Ich versuche mit diesem Befehl das letzte Änderungsdatum einer Datei abzurufen
TM_LOCAL=`ls -l --time-style=long-iso ~/.vimrc | awk '{ print $6" "$7 }'`
TM_LOCAL hat nach Ausführung dieser Zeile den Wert "2012-05-16 23:18"
Ich möchte auch PIPESTATUS überprüfen, um festzustellen, ob ein Fehler aufgetreten ist. Wenn die Datei beispielsweise nicht vorhanden ist, wird ls
2 zurückgegeben. Sie $?
hat jedoch den Wert 0, da sie den Rückgabewert von hat awk
.
Wenn ich diesen Befehl alleine ausführe, kann ich den Rückgabewert von ls anhand von überprüfen ${PIPESTATUS[0]}
ls -l --time-style=long-iso ~/.vimrc | awk '{ print $6" "$7 }'
Funktioniert aber $PIPESTATUS
nicht wie erwartet, wenn ich die Ausgabe wie im ersten Beispiel einer Variablen zuordne. In diesem Fall hat das $PIPESTATUS
Array nur 1 Element, das dem entspricht$?
Die Frage ist also, wie ich beides bekommen $PIPESTATUS
und die Ausgabe gleichzeitig einer Variablen zuweisen kann.