Zum Inhalt springen

Files aus Verzeichnis kopieren und umbenennen


efeijoo

Empfohlene Beiträge

Hallo zusammen

Als erstes möchte ich erwähnen das ich ein absoluter neuling bin betreffend scripting. Bin gerade dabei mich einzuarbeiten und bräuchte euere Hilfe.

Ich bin gerade an einem Script was Ordner für die Sicherung anlegt falls nicht schon vorhanden und bestimmte Files von Path1 nach Path2 kopiert. Soweit so gut. Jetzt möchte ich das bei den kopierten Files noch das Datum angehängt wird mit date +%Y%m%d. Und das krieg ich einfacht nicht hin.

Ich denke ich muss irgendwie das File in eine Varible schreiben um dann das Datum anzuhängen und dies durch eine Schlaufe laufen lassen damit alle Files umbenennt werden.

Kann mir jemand ein Tip geben? Anbei mein Sript...

**********************************************************

# Variablen setzen

# **********************************************************

heute=`date +%Y%m%d`

text_datum=`date +%d"."%m"."%Y`

text_zeit=`date +%T`

system_datum=`date +%d"."%m"."%Y`

JAHR=`date +%Y`

MONAT=`date +%m`

ftp_path=/export/home/ftp/lukb

swx_path=/export/home/smb/swx

# Sind Files für das Kopieren vorhanden

if [ ! -f ${AP_DAT}/RSD*.txt ] ; then

echo "Es sind Keine Files da um zu Kopieren"

exit 0

fi

# **********************************************************

# Erstellen Ordner für die Sicherung

# **********************************************************

# Erstelle ein Jahres Verzeichnis

# **********************************************************

if [ ! -d ${swx_path}/${JAHR} ] ; then

echo "Das Verzeichnis ${swx_path}/${JAHR} wird erstellt"

mkdir ${swx_path}/${JAHR}

fi

# **********************************************************

# Erstellen das Monats Verzeichnis

# **********************************************************

if [ ! -d ${swx_path}/${JAHR}/${MONAT} ] ; then

echo "Das Verzeichnis ${swx_path}/${JAHR}/${MONAT} wird erstellt"

mkdir ${swx_path}/${JAHR}/${MONAT}

fi

# **********************************************************

# SWX

# **********************************************************

echo Files nach /export/home/smb/swx kopiert

cp ${AP_DAT}/RSD*.txt ${swx_path}

cp ${AP_DAT}/RSD*.txt ${swx_path}/${JAHR}/${MONAT}

echo "Das File wird im Ver. DAT gelöscht"

rm ${AP_DAT}/RSD*.txt

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo bigvic

Um deine Frage zu beantworten. Es ist die Korn-Shell.

Hier noch mein überarbeitetes Script. Hier bin ich der Meinung das es funktionieren sollte, tut es aber nicht. Gibt einen Fehler aus beim moven.

#!/bin/sh

# Variable Laden

# **********************************************************

# Wenn Job nicht laufen sollte EXIT ohne Fehler verlassen

# ----------------------------------------------------------------

# **********************************************************

# Variablen setzen

# **********************************************************

heute=`date +%Y%m%d`

text_datum=`date +%d"."%m"."%Y`

text_zeit=`date +%T`

system_datum=`date +%d"."%m"."%Y`

JAHR=`date +%Y`

MONAT=`date +%m`

ftp_path=/export/home/ftp/lukb

swx_path=/export/home/smb/swx

# Sind Files für das Kopieren vorhanden

if [ ! -f ${APSYS_DAT}/RSD*.txt ] ; then

echo "Es sind Keine Files da um zu Kopieren"

exit 0

fi

# **********************************************************

# Erstellen Ordner für die Sicherung

# **********************************************************

# Erstelle ein Jahres Verzeichnis

# **********************************************************

if [ ! -d ${swx_path}/${JAHR} ] ; then

echo "Das Verzeichnis ${swx_path}/${JAHR} wird erstellt"

mkdir ${swx_path}/${JAHR}

fi

# **********************************************************

# Erstellen das Monats Verzeichnis

# **********************************************************

if [ ! -d ${swx_path}/${JAHR}/${MONAT} ] ; then

echo "Das Verzeichnis ${swx_path}/${JAHR}/${MONAT} wird erstellt"

mkdir ${swx_path}/${JAHR}/${MONAT}

fi

# **********************************************************

# SWX

# **********************************************************

echo Files nach /export/home/smb/swx kopiert

for i in RSD*.txt; do#mv $i ${heute}_${i}; done

mv ${APSYS_DAT}/$i ${swx_path}/${heute}_${i}

mv ${APSYS_DAT}/$i ${swx_path}/${JAHR}/${MONAT}/${heute}_${i}

echo "Das File wird im Ver. DAT gelöscht"

rm ${APSYS_DAT}/RSD*.txt

# if [ -z "$2" ] ; then break ; fi

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...