Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Ubuntu-Forum & Kubuntu-Forum | www.Ubuntu-Forum.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Winjo

User

  • »Winjo« ist der Autor dieses Themas

Beiträge: 5

Registrierungsdatum: 26.06.2010

Derivat: Ubuntu

Architektur: 64-Bit PC

  • Nachricht senden

1

26.06.2010, 18:07

USB Sticks kopieren

Hallo,
als Neuling auf der Konsole habe ich folgendes vor:
Es sollen überer mehrere Hubs USB-Sticks kopiert werden. Zuerst sollen die Sticks gelöscht werden ( sofern etwas drauf ist, was vorkommen kann), dann die Daten kopiert und überprüft werden ob alles drauf ist. Im unteren Script habe ich schon mal einen Versuch gemacht, wo zu Schluss die Daten pro Stick gezählt werden bzw. die Datengröße aufgeführt wird.

Da jedoch bei 5 Hubs eine Überprüfung unüberschaubar ist, wäre es ideal wenn alles zum Schluss jeder Slot aufgeführt wird, ungefähr so:

1. 30 Datein 33333 KB
2. 30 Datein 33333 KB
3. 30 Datein 33333 KB
....

Bei meinem Script werdet ihr sicher viele Verbesserungen finden, aber aller Anfang ist schwer. Ich habe ein kleines Script gefunden und dieses mit anderen Befehlen erweitert. Was mir nicht gefällt ist, dass ein Stick nach dem anderen kopiert wird. Besser wäre es doch, wenn das Kopieren gleichzeitig statt findet - sofern machbar.

Hier also mein Script mit der Hoffnung auf viele Tipps und Hilfe:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/bash 
 clear 
 echo "------------------------------- NEUER  KOPIERVORGANG  -------------------------------" 
 echo "Es werden  alle Daten aus dem Verzeichnis -Downloads- auf die  USB-Sticks kopiert" 
  echo " " 
 read -n1 -r -p "Drücken Sie eine beliebige Taste, um  fortzufahren..."  key 
 echo 
 echo 
 for DRIVES in  /sys/block/sd* 
 do 
 if readlink $DRIVES | grep -q usb 
 then 
  NAME=`basename $DRIVES` 
 DRIVE=`mount|grep $NAME` 
 INFO=`expr  "$DRIVE" : '.*\(/media/.*\).* type'` 
 cd $INFO # Zeiger auf den  Anfang der Sticks 
 echo "Vorhandene Daten auf den USB-Sticks wurden  gelöscht" 
 echo Kopiere Daten nach $INFO 
 DIR=`echo ${INFO/ /\\  }` 
 cd ~ 
 cd Downloads 
 cp -r *.* "$DIR" 
 # echo  "kopierte Datengröße" 
 cd $INFO 
 du -c # Zeigt den Gesamtinhalt  des Sticks in KB an 
 # echo "Anzahl der Dateien auf dem USB-Stick,  inkl. in den Ordnern  (Ordner werden nicht mitgezählt)" 
 cd $INFO 
  find -type f | wc -l # Zeigt die Anzahl der Datein an, die sich auf den   Sticks befinden 
 echo "-------------------------- Kopiervorgang  beendet  --------------------------" 
 fi 
 done 
 echo  "------------------ Der Kopiervorgang wurde komplett abgeschlossen   ------------------" 
 echo " " 
 # read -n1 -r -p "Drücken Sie  eine beliebige Taste zum Beenden" key 
 exit 0 


Viele Grüße

Winjo

Edit: ich hoffe das ich es jetzt richtig gemacht habe - SORRY :-(

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »Winjo« (29.06.2010, 07:11)


2

27.06.2010, 14:50

Hallo,

die von dir verwendeten Code-Tags (UU?) funktionieren hier nicht. Bitte bearbeite deinen Betrag und nutze die, die unsere Software auch erkennt (#-Button).
~ Two hours of trial and error can save ten minutes of RTFM ~