efeijoo Geschrieben 12. Januar 2010 Geschrieben 12. Januar 2010 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
4psh Geschrieben 13. Januar 2010 Geschrieben 13. Januar 2010 Hi, bin da auch kein Profi - aber bei mir hats bis jetzt so funktioniert, die Strings zu verbinden: ${bla}${blubb} oder hab ich da noch was falsch verdstanden ? greets
efeijoo Geschrieben 13. Januar 2010 Autor Geschrieben 13. Januar 2010 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
Juchi Geschrieben 16. Januar 2010 Geschrieben 16. Januar 2010 Interessant wäre noch, welchen Fehler in welcher Zeile das Script ausgibt. Und was steht in der Variable ${APSYS_DAT}?
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden