Ctime einer Datei feststellen

Hallo Experten,
ich muss für ein Bash-Skript die ctime einer Datei in eine Variable schreiben. Mit diesem Befehl schaffe ich das auch:

CTIME=`ls -cl | cut -d\ -f6-7`

das ist aber furchtbar umständlich. Geht es nicht irgendwie einfacher, am besten mit einem Befehl?

Vielen Dank schon mal
Jan

Hallo,

CTIME=ls -cl | cut -d\ -f6-7

das ist aber furchtbar umständlich.

Was soll daran umständlich sein? Eine Möglichkeit die Aufgabe mit einem einzigen Kommando zu erledigen, wäre find:

find -maxdepth 1 -printf "%c\n" 

aber leider liefert dies das Datum im Format:

Wed Dec 1 07:58:31.0450574700 2010

Gruß
Axurit

Hallo Axurit,

Was soll daran umständlich sein?

Umständlich war vielleicht etwas falsch ausgedrückt. Ich dachte nur, dass es eben einen einzigen Befehl gäbe (ohne Pipe usw.), der diese scheinbar leichte Aufgabe löst und ich ihn bloss noch nicht kenne. Man lernt schliesslich gern dazu :wink:

Eine Möglichkeit die Aufgabe
mit einem einzigen Kommando zu erledigen, wäre find:

find -maxdepth 1 -printf „%c\n“

Danke, das ist die entscheidende Idee. Ich habe das etwas abgewandelt und bekomme mit

find -printf "%C+"

genau das passende Format:

2010-07-08+20:22:57.0000000000#

Viele Grüsse
Jan

Mach dir ein ausführbares Shell-Script. Leere Textdatei öffnen und folgendes eintragen:

#!/bin/sh

hier dein langer Befehl

und als irgendeinname.sh speichern.

Dann mit… chmod u+x irgendeinname.sh …ausführbar machen.
Damit brauchst du in Zukunft nur noch draufklicken.

Gruß

Mach dir ein ausführbares Shell-Script.

für ein Shell-Script ein einzeiliges Shell-Script erzeugen? Naja kann man… :wink:

J~