Shellskript: Datei mit Schleife kopieren/replizieren lassen

Antworten
Nachricht
Autor
qxw2c
Beiträge: 2
Registriert: 30. Nov 2009 21:52

Shellskript: Datei mit Schleife kopieren/replizieren lassen

#1 Beitrag von qxw2c » 30. Nov 2009 21:57

Hallo ihr,

ich möchte einen bei Ebay gekauften USB Stick auf seine Größe untersuchen und dazu die Datei 1.mp3 so oft vom Desktop auf den Stick kopieren lassen, bis dieser voll ist. Jemand eine Idee dazu? Ich habe mich schon halb tot gesucht!

Grüße

qxw2c

Benutzeravatar
Janka
Beiträge: 3581
Registriert: 11. Feb 2006 19:10

#2 Beitrag von Janka » 30. Nov 2009 22:15

Warum kopierst du nicht einfach eine sehr sehr große Datei drauf, die gerade noch draufpassen sollte, ziehst den Stick ab, steckst ihn wieder dran und vergleichst sie mit dem Original? Dann kannst du dir sicher sein, dass der Stick die angegebene Speicherkapazität hat. Mit deiner Idee erreichst du nichts dergleichen. Oder welchen Sinn soll das haben?

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

qxw2c
Beiträge: 2
Registriert: 30. Nov 2009 21:52

#3 Beitrag von qxw2c » 01. Dez 2009 5:42

Weil ich keine 64 GB große Datei habe ;-)Mit meiner Idee wollte ich schauen, ab welcher Mp3-Datei, also dem vielfachen der Größe der Urspungsdatei, Fehler bei der Wiedergabe kommen.

pferdefreund
Beiträge: 35
Registriert: 17. Apr 2007 16:55

#4 Beitrag von pferdefreund » 01. Dez 2009 12:12

Warum nicht mit dd knapp 64 GB aus /dev/zero draufhauen und dann mit
echo "irgendwas" >> hinterher ans Ende der Datei schreiben.
Wenn du dann am Ende der Datei dein "irgendwas" findest (nach remount), dann
sollte das Teil doch in Ordnung sein.

Benutzeravatar
Janka
Beiträge: 3581
Registriert: 11. Feb 2006 19:10

#5 Beitrag von Janka » 01. Dez 2009 13:04

Falls der USB-Stick mit FAT formatiert ist, kann man eh keine 64GB-Dateien anlegen. Bei 2GB ist Schluss. Deine Idee, 64GB MP3 *durchhören* zu wollen ist jedenfalls unsinnig.

In dem Fall legst du eine Datei mit 2GB an, merkst dir die Prüfsumme, kopierst sie auf den Stick. Dann eine neue Datei mit 2GB, neue Prüfsumme, wieder auf den Stock kopieren etc. Im einfachen Fall darf es auch immer dieselbe Datei sein.

Folgendes Skript ausführen:

Code: Alles auswählen

#!/bin/bash

echo "Erzeuge Testdatei"
dd if=/dev/urandom of=testdatei bs=1M count=2047

echo "Kopiere Testdatei auf Stick"
for &#40;&#40; i=0 ; i<32 ; i++&#41;&#41;
do
 cp testdatei /media/disk/$i
done
Danach Stick abziehen, warten, einstecken. Dann folgendes Skript ausführen.

Code: Alles auswählen

#!/bin/bash
echo "Prüfe Stick"
for &#40;&#40; i=0 ; i<32 ; i++&#41;&#41;
do
 cmp testdatei /media/disk/$i || echo "Fehler bei Datei $i" 
done
Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

Antworten