Importowanie zdjęć i filmów z telefonu
Skrypt Powershell “importCameraRoll.ps1”
- Importuje multimedia z telefonów / apartów kilku domowników.
- Uwzględnia tylko nowsze dane od ostatniego importu.
- Zmienia nazwy plików na “yyyy-MM-dd_hh.mm.ss…” i umieszcza je w bibliotekach Obrazy albo Wideo w folderach jak rok i podfolderach jak data dnia albo miesiąca.
- Wymaga jednorazowej konfiguracji dla każdego telefonu / aparatu na podstawie danych wyświetlanych w eksploratorze Windows po podłączeniu urządzenia kablem USB.
Plik do pobrania importCameraRoll.ps1(.zip)
Jeśli uruchamiasz Powershel po raz pierwszy to przeczytaj początkowe 2 zdania w “Hybrydowy skrypt CMD-PowerShell” .
Początkowy fragment skryptu:
$phoneCameraFolder = @{
# nazwę aparatu i właściwy folder DCIM należy odczytać w eksploratorze Windows
'A40' = '\Card\DCIM\Camera'
'Mi 9T'= '\Wewnętrzna pamięć współdzielona\DCIM\Camera'
}
$phonePostfix = @{ #dopisek tuż przed rozszerzeniem nazwy pliku
'A40' = '_a'
'Mi 9T'= ''
}
$tmp='.tmp'
# - tymczasowe miejsce kopiowania z aparatu (względem folderu skryptu)
# - powinno to być na tym samym dysku co Obrazy i Wideo
# poniżej podwójne tablice $iv = 0..1 dla _img, _vid
$filterImgVid=@( '(.jpg)|(.jpeg)|(.png)|(.heic)|(.heif)$',
'(.mp4)|(.mpeg)|(.mpg)|(.hevc)$' )
URUCHAMIANIE: powershell.exe -noexit -File "importCameraRoll.ps1"
Możesz sobie zrobić na pulpicie skrót z takim poleceniem w polu “Element docelowy:” i z “Rozpocznij w:” <folder, w krórym jest skrypt>. Warto też dobrać stosowną nazwę i ikonkę tego skrótu. Możesz go wypakować z pliku ZIP (ikona po prawej) tylko we właściwościach musisz wpisać poprawną ścieżkę “Rozpocznij w:” do foldera w któym jest plik “importCameraRoll.ps1”.
Więcej informacji:
- Kopiowanie plików z DCIM na podstawie nazwy z pominiętymi początkowymi nie-cyframi, która jest większa od maksymalnej takiej nazwy ostatnio skopiowanej - zapamiętanej w pliku json. Tu nie jest ważne co zawierają ciągi cyfr - ważne, żeby nowsze pliki dawały wyższą wartość podczas porównywania łańcuchów znaków.
- Pliki z DCIM są kopiowane do foldera “.tmp”. Tam można także wrzucić ręcznie jakieś pliki.
- Zakładamy, że ciąg cyfr w nazwie w DCIM- pomijając wszelkie nie-cyfry - zawiera yyyyMMddhhmmss…
Będzie to generowało nazwę pliku “yyyy-MM-dd_hh.mm.ss…”, gdzie w “…” będzie zachowana
oryginalna końcówka nazwy oryginalnej, np. “_1_HDR.jpg”.
Jeśli nie ma takich cyfr, to pobierana jest data modyfikacji, a gdy i jej brak to data aktualna. - Zdjęcia są docelowo kopiowane do biblioteki “Obrazy” do foldera “yyyy\yyyy-MM-dd”.
Filmy są kopiowane do biblioteki “Wideo” do foldera “yyyy\yyyy-MM”. - Gdyby plik docelowy o wygenerowanej nazwie “yyyy-MM-dd_hh.mm.ss…” już istniał, to
- jeśli ma różną treść, dopisywana jest “_
" poczynając od "_7" w górę. - jeśli oba są o identycznej treści, to kopiowanie jest pomijane:
- wstępnie sprawdzany jest rozmiar w px i wielkość w bajtach itp.
- jeśli te są identyczne, to plik nie jest kopiowany, a na końcu, po porównaniu binarnym jest usuwany z “.tmp”. Na koniec folder “.tmp” powinien być pusty.
- jeśli ma różną treść, dopisywana jest “_