====== cd/dvd Massen import script - automatisiert massenweise cd/dvds importieren bzw auf platte kopieren ====== Schonmal eine Datensicherung auf CD oder DVD bestehend aus mehreren duzend Disks zurückspielen müssen? Oder die gesamte Bilder- oder Musik-Sammlung CD für CD? Das ist ganz schön langwierig und man macht doch nur immer wieder die gleichen Handgriffe. Warum also nicht so weit wie möglich automatisieren? Darum habe ich mir eben schnell dieses kleine Script geschrieben dass mir die Arbeit dabei etwas abnimmt. Es öffnet automatisch das CDROM Laufwerk und kopiert nach einem Tastendruck automatisch den CD Inhalt in ein neues Unterverzeichniss mit Serien-Nummer (beginnend mit cd1, dann cd2, cd3 usw) ausgehend vom aktuellen Verzeichniss (PWD). Während des Kopiervorgangs sieht man welche Dateien es gerade kopiert. Anschließend wird die CD autom. unmounted, das CDROM Laufwerk wieder geöffent und um eine neue CD gebeten. etc etc. Vieleicht findet es ja Jemand Anderer genauso nützlich wie ich selbst. Hier das Script zum download... #!/bin/bash # CD/DVD Mass Importer # # Version 1.0 by Axel Werner [mail@awerner.myhome-server.de] # # helps user/admin to import or "copy" a massive amount of # CDs or DVDs to the local directory through automation. # # It automaticly opens the cdrom or dvd tray # prompts the user to insert a media and press any key # then it creates a sequal numbered subdirectory like cd1 cd2 # etc and copies the content of the cd/dvd there. # when finished it ejects the cd automaticly and prompts for # next cd to insert. # comes handy when handling large data collections on cd/dvd # on restoring backups or similar. # ############################## # # Changes: # ============= # # 2011-01-10 A.Werner RELEASE 1.0 # # ############################## SERIAL=0 while true ; do let SERIAL++ clear echo "opening CDROM tray..." echo eject -T /dev/cdrom1 echo "press CTRL+C to cancel. Else insert next CD/DVD" echo "for copy CD to 'cd$SERIAL/' , then close the CD-TRAY" echo "and press any key to start copy process..." read mount /dev/cdrom1 while [ -d "cd$SERIAL" ] ; do echo "it seems 'cd$SERIAL/' already exists. Trying next Serial..." let SERIAL++ done mkdir "cd$SERIAL" cp -av /media/cdrom0/* "cd$SERIAL/" umount /dev/cdrom1 echo "...done" echo "resetting file permissions for samba..." chown -R yourusername.users "cd$SERIAL/" chmod -R 770 "cd$SERIAL/" echo "...done" done Viel Erfolg mit dem Script! --- //[[mail@awerner.myhome-server.de|Axel Werner]] 2011-01-10 19:45// {{tag>linux cdrom dvd mass import copy restore scripting shell bash}}