script zum einlesen von datentraegern

Du suchst ein Programm für einen bestimmten Zweck?
Antworten
kevin
Beiträge: 325
Registriert: 08.11.2004 00:03:24

script zum einlesen von datentraegern

Beitrag von kevin » 13.07.2006 18:37:33

da es unter linux kein vernuepftiges progamm wie where is it (windows) gibt um datentraeger einzulesen und zu catalogisieren muss man sich wohl selbst etwas erfinden

hat jemmand eine idee wie ein script aussehen koennte welches eine (daten) cd oder dvd einliest und die datei und verzeichnisstrucktur 1:1 auf der festplatte in einem verzeichnis mit 0 byte dateien nachbildet mit der ergaenzung das an jeder datei ein anhang kommt der aussagt welche cd/dvd nummer es ist wo die datei spaeter wieder zufinden ist

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 13.07.2006 21:16:38

MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

kevin
Beiträge: 325
Registriert: 08.11.2004 00:03:24

Beitrag von kevin » 13.07.2006 23:17:51

nett

aber weiss jemmand wie so ein script aussehen koennte

Benutzeravatar
legolaus
Beiträge: 67
Registriert: 07.06.2006 10:14:35
Wohnort: Wetterau / Hessen

Beitrag von legolaus » 13.07.2006 23:24:26

möchtest du wissen wir man die obigen geposteten programme verwendet oder möchtest du wirklich selbst das rad neu erfinden?

Gruss

Legolaus

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 13.07.2006 23:26:58

Weiss zwar nicht, wozu das gut sein soll, aber bitte

Code: Alles auswählen

#!/bin/sh
if [ $# -lt 3 ]; then
  echo Usage: $0 path_to_index destination_path postfix
  exit 1
fi
find $1 -type d -exec mkdir -p $2/{} \;
find $1 -type f -exec touch $2/{}.$3 \;

ToPeG
Beiträge: 437
Registriert: 14.04.2004 00:42:06

Beitrag von ToPeG » 13.07.2006 23:37:08

Nur so aus der holen Hand:

Code: Alles auswählen

#!/bin/sh
$BASISPFAD="/pfad/zum/cdindex"
$pfad_zur_gemounteten_CD_DVD=$1
$CDNAME=$2
mkdir "$BASISPFAD/$CDNAME"
find $pfad_zur_gemounteten_CD_DVD -type d -exec "mkdir $BASISPFAD/$CDNAME{} ;"
find $pfad_zur_gemounteten_CD_DVD -type f -exec "touch $BASISPFAD/$CDNAME{} ;" 
Das Ding ist völlig ungetestet, aber so ähnlich könnte man es manchen.

Etwas ähnliches habe ich auch in Perl geschrieben. Lies dir mal den Thread von hier aus weiter durch.
http://www.debianforum.de/forum/viewtop ... c&start=33

kevin
Beiträge: 325
Registriert: 08.11.2004 00:03:24

Beitrag von kevin » 20.07.2006 20:37:57

Code: Alles auswählen

#!/bin/sh
find /home/kevin/Desktop/disc-archive/gemountete_disc/ -type d -exec mkdir -p /home/kevin/Desktop/disc-archive/temp/{} \;
find /home/kevin/Desktop/disc-archive/gemountete_disc/ -type f -exec touch /home/kevin/Desktop/disc-archive/temp/{}  \;
so funktioniert das soweit, ich will jetzt das allen erstellten dateien ".20060720-00001" z.b. angehangen wird, wie mache ich das?

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 20.07.2006 21:01:15

kevin hat geschrieben:ich will jetzt das allen erstellten dateien ".20060720-00001" z.b. angehangen wird, wie mache ich das?

Code: Alles auswählen

find PFAD -type f -exec touch {}.$(date +%Y%m%d)-$(printf %05i $1) \;
$1 wird durch den ersten Parameter ersetzt. Wenn du dein Skript also mit

Code: Alles auswählen

./skript.sh 42
aufruft, wird "datum-00042" angehängt.

kevin
Beiträge: 325
Registriert: 08.11.2004 00:03:24

Beitrag von kevin » 20.07.2006 21:10:31

halt, nein, ich will das skript nicht mit irgendwelchen zahlen dahinter starten und auch keine variablen vorerst im script haben
das mir alles zuunuebersichtlich und kompliziert
ich will auch nicht das aktuelle datum nehmen, ich werde auch schon bereits gebrannte daten traeger einlesen

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 20.07.2006 21:12:46

kevin hat geschrieben:ich will auch nicht das aktuelle datum nehmen, ich werde auch schon bereits gebrannte daten traeger einlesen
Dann hättest du sagen sollen, was du mit
Ich will jetzt das allen erstellten dateien ".20060720-00001" z.b. angehangen wird, wie mache ich das?
meintest.

Schreib statt "{}" einfach "{}.20060720-00001"...

kevin
Beiträge: 325
Registriert: 08.11.2004 00:03:24

Beitrag von kevin » 20.07.2006 22:02:02

cool, es funktioniert - danke!

Antworten