DaScheff: Archivierung

Hallo!
Kennt wer ein gutes Programm, dass ich zur Archivierung - genauer gesagt, ein Programm welches dateien in einem bestimten Ordner in einen neue angelegten Ordner (den nach dem Quartal bennent) kopiert; dabei aber Ordner unberührt läßt, bzw. im neuen ordner neue sub-orner erstellt? Und das ganze für suse 8.0
Hoffe, dass das ganze schon mal werd gemacht hat...
Danke für alle art von Tipps!

  1. Hallo!
    Kennt wer ein gutes Programm, dass ich zur Archivierung - genauer gesagt, ein Programm welches dateien in einem bestimten Ordner in einen neue angelegten Ordner (den nach dem Quartal bennent) kopiert; dabei aber Ordner unberührt läßt, bzw. im neuen ordner neue sub-orner erstellt? Und das ganze für suse 8.0

    Klingt für mich so, als würde ein normales Shell-Script mit ein paar "cp"- und "mkdir"-Befehlen das schon tun.

    1. Klingt für mich so, als würde ein normales Shell-Script mit ein paar "cp"- und "mkdir"-Befehlen das schon tun.

      Geht das uch wenn sich die sub-ordner und die datei namen ändern?

      1. Hi,

        Klingt für mich so, als würde ein normales Shell-Script mit ein paar "cp"- und "mkdir"-Befehlen das schon tun.

        Geht das uch wenn sich die sub-ordner und die datei namen ändern?

        Was genau willst Du denn machen?

        So?

        Verz: daten/ (enthält alle zu archivierenden Daten)
        Verz: archiv/Jahr_Quartal/ (enthält eine die archivierten Daten)

        Dann würde ich das in etwa so schreiben (ich stelle das jetzt mal unter die GPL *g*):

        -----------------------------------------------------------------------------------
        #!/bin/bash

        BASEDIR=/mnt/mydata
        DATADIR=daten
        ARCHIVEDIR=archiv

        CURR_YEAR=date +%Y
        CURR_MONTH=date +%m | sed s/^0//

        DIRECTORY=${CURR_YEAR}_$(($CURR_MONTH/4+1))

        if test ! -d $BASEDIR/$DATADIR ; then
                echo "Data directory $BASEDIR/$DATADIR does not exist." >&2
                exit 1
        fi

        if test ! -d $BASEDIR/$ARCHIVEDIR ; then
                echo "Archive directory $BASEDIR/$ARCHIVEDIR does not exist." >&2
                exit 2
        fi

        if test -e $BASEDIR/$ARCHIVEDIR/$DIRECTORY ; then
                echo "Destination directory $BASEDIR/$ARCHIVEDIR/$DIRECTORY already exists. Archive already happened?" >&2
                exit 3
        fi

        echo "Creating directory ..."
        mkdir -p $BASEDIR/$ARCHIVEDIR/$DIRECTORY

        if ! test -d $BASEDIR/$ARCHIVEDIR/$DIRECTORY ; then
                exit 4
        fi

        echo "Copying files ..."
        cp -va $BASEDIR/$DATADIR/* $BASEDIR/$ARCHIVEDIR/$DIRECTORY

        -----------------------------------------------------------------------------------

        Grüße,

        Christian

        1. Super danke!
          Geht ja wirklich einfacher als ich mir gedacht habe :-)...
          nochmals vielen Dank!