brampftl
Goto Top

Datum aus ls-l in Shell-Script verwenden

hallo linux admins,

ich habe das unten stehende skript geschrieben, um sicherungsimages die von den clients geschrieben werden zu sortieren. die sicherungsimages in form von PCNAME_sicherung.tib werden in den SOURCE_DIR geschrieben. von dort aus schiebt sie das script dann in DEST_DIR in den jeweiligen PCNAME-Ordner. Dabei benennt es die Dateien um und hängt einen Datum-Schlüssel vorne dran.

Ich übersah, dass das Datum das drangehängt wird natürlich nicht das datum der erstellung der datei ist, sondern das datum an dem das skript ausgeführt wird.

ist es möglich, dass datum des erstellungs-tages zu verwenden? zB mit awk aus dem ls-l befehl?

gruß
brampftl


#!/bin/sh

#Skript zum Verschieben, Umbenennen und Löschen von Backup-Images


#Pfad zu dem Verzeichnis, das die zu sichernden Dateien enthaelt
SOURCE_DIR="/srv/daten/images/sicherungs-images/pc/temp"


#Pfad zu dem Verzeichnis, in dem die einzelnen Ordner mit den Rechnernamen erstellt werden sollen
DEST_DIR="/srv/daten/images/sicherungs-images/pc"


#Welche Dateiendung haben die zu sichernden Dateien?
DATEIENDUNG="tib"


#String welcher das Datum enthaelt
DATUM=`date +%Y_%m_%d`


#Liste aller Dateien die zu sichern sind > Filtert nach Dateiendung
FILE_LIST=`find ${SOURCE_DIR} -maxdepth 1 -type f -name "*.${DATEIENDUNG}"`

echo "Zu sichernde Dateien :"


#Ausgabe aller zu sichernden Dateien
for FILE in ${FILE_LIST}; do
echo "\t${FILE}"
done


#Die Dateien sichern...

echo "Sichere Dateien :"

for FILE in ${FILE_LIST}; do

FILENAME=`basename ${FILE}`
RECHNERNAME=`basename ${FILENAME} | awk -F_ '{print $1}'`


                  1. Verzeichnisse erstellen falls noetig
                  if [ ! -d ${DEST_DIR}/${RECHNERNAME} ]; then
                  mkdir ${DEST_DIR}/${RECHNERNAME}
                  fi

                                  1. Image ins Verzeichnis verschieben und Datum anhaengen
                                  mv ${FILE} ${DEST_DIR}/${RECHNERNAME}/${DATUM}_${FILENAME}

                                  echo "\${FILENAME} >> ${DEST_DIR}/${RECHNERNAME}/${DATUM}_${RECHNERNAME}.${DATEIENDUNG}"
                                  done


                                  #Sicherungen älter X Tage loeschen
                                  find ${DEST_DIR} -name '*.tib' -mtime +14 -exec mv -v -f {} \;

Content-Key: 50053

Url: https://administrator.de/contentid/50053

Ausgedruckt am: 29.03.2024 um 07:03 Uhr

Mitglied: volkerw
volkerw 29.01.2007 um 09:39:23 Uhr
Goto Top
Hallo brampftl,
mit cut geht das so:
ls -l datei | cut -d" " -f6  
Gruß Volker