Mam dużo płyt DVD (filmów), które chcę zapisać jako .iso, najlepiej za pomocą dd
. Aby przyspieszyć proces, mam dwa dyski.
Chciałbym skonfigurować skrypt (czysta bash lub bash + kombinacja AppleScript), który działa na insert. macOS pozwala skonfigurować skrypt w Ustawieniach ›Płyty CD i DVD› Po wstawieniu…
Proces powinien wyglądać następująco:
- Włóż dysk DVD do jednego z dwóch napędów
- Skrypt uruchamia się i sprawdza, który dysk uruchomił polecenie (dla mnie najtrudniejsza część)
- Otwiera okno terminala i uruchamia właściwy skrypt
Wstępny szkic tego, co jest moim pomysłem:
#!/bin/bash
diskutil umountDisk /dev/THEDRIVE
echo -n `date "+%Y-%m-%d - %H:%M:%S -> Starting with DISCTITLE"` >> iso.log
dd if=/dev/THEDRIVE | pv -s DRIVESIZE | dd of=/myfolder/DISCTITLE.iso
echo -n `Finished DISCTITLE, took TIME. Ejecting.`
drutil tray eject -drive DRIVENUMBER
- Zamknij okno terminala po wysunięciu
UnmountDisk for dd
, write to log, copy with status using pv
, write to log again i wysuń dysk po zakończeniu.
To, czego nie wiem, to sposób, w jaki dostaję część z dwoma dyskami. I skonfiguruj skrypt, aby dobrze go obsługiwał.
drutil status
mówi rozmiar i urządzenie. mount
mówi imię. Ale oczywiście zawsze mam oba dyski.
Jak mogę użyć np. awk
Lub, sed
aby uzyskać urządzenie / punkt montowania, tytuł płyty, rozmiar i numer seryjny (aby wysunąć prawy) bieżącej płyty?
dd
pomocą VLC. Myślałem też o ochronie przed kopiowaniem, ale moja pierwsza próba po prostu zadziałała.
dd
omija problem z natury?