Datei in Verz. kopieren

F

flugopa

Hallo,

ich stehe gerade auf der Leitung und benötige einen Schupps...

Code:
#!/bin/sh
rm -rf 4*
rm -f 4*.pdf

PFAD="/media/cdrom1/pdf"

#Beispiel
# Datei 1. = abc.pdf
# Datei 2. = ddkk.pdf
u.s.w.

# Lege Verz. an -> Dateiname OHNE Erweiterung = Verz.-Name
# Beispiel
# Verz1 = /abc
# Verz1 = /ddkk
u.s.w.

for ii in `find $PFAD -type f -name "*.pdf" | cut -d'.' -f1 | cut -d'/' -f5`
do
    [ -d "$ii" ] || mkdir $ii
done

# Kopiere Datei in das Namensgleiche Verz.

#   Hier hänge ich etwas

for ii in `find $PFAD -type f -name "*.pdf" | cut -d'/' -f5`
do
    echo "$ii"
    cp $ii ./$ii
done

Wer kann helfen?
 
Hallo
Was ist jetzt dein Problem?
Wenn dein /bin/sh auf die Bash zeigt:

1) Dateiname -> siehe basename
Beispiel:
Code:
for i in $(find /path -type f);
 do 
A=$(basename $i); 
echo "Name ohne Erweiterung: ${A%\.*};
done
2) Hier musst du mit absoluten Pfaden Arbeiten.
Ungetesteter Schnellschuß: vermeidet zweimal find mit selben Kriterien:
Code:
PT="/suchpath/"
TARGPT="/Wurzelverz/"
for i in $(find $PT -type f -iname "*pdf");
 do 
A="$(basename $i)"; #reiner Dateiname
B="${A%\.*}"; #Ohne Erweiterung
echo "Name ohne Erweiterung: $B ";
cd $TARGPT;
[ -d  "$B" ] || mkdir "$B";
#$i hält den ganzen Namen
cp "$i" "$B/$i"
done

Gruß Wolfgang
 

Ähnliche Themen

Verschlüsseltes Backup-Script mit rsync

Prblem mit zeilenweises auslesen von Datei und schreiben nach mysql

Zeilen kopieren mit SED

verzeichniss suche funktioniert nicht

Problem mit Leerzeichen im Namen

Zurück
Oben