Come eseguire il backup / esportazione di foto / video dalla nuova app Foto su un disco rigido esterno?

6

Ho un'enorme libreria nella nuova app Foto sulla mia macchina Yosemite per Mac OS X, voglio sapere il modo più semplice per esportare o fare il backup di tutte queste foto e video su un disco rigido esterno (formattato per Mac), dando così , Voglio usare le foto e i video su una macchina Windows 7.

Nota : l'opzione File -> Export impiegherà per sempre l'esportazione di migliaia di questi elementi.

    
posta JAHelia 25.06.2015 - 12:29
fonte

4 risposte

9

Se vuoi semplicemente che l'intera struttura dei Master sia copiata in una nuova unità, allora

  • per prima cosa trova il tuo file iPhoto o Photos Library. La posizione predefinita per entrambi è ~ / Immagini /

  • Fai clic con il pulsante destro sul file di libreria & seleziona Mostra contenuto pacchetto - che esporrà il 'file' come la cartella in cui si trova realmente.

  • La cartella Masters dovrebbe essere appena dentro. Puoi copiarlo ovunque.
    È ordinato in anni, poi in mesi. Non tutte le cartelle contenute verranno effettivamente popolate, se le vecchie foto sono state eliminate, la struttura dei file rimane.

Come indicato nei commenti, se hai bisogno che la struttura copiata sia leggibile in modo nativo su Windows, devi formattare il disco di destinazione come ExFAT.
Windows non può leggere in modo nativo i dischi e l'estensione di Mac OS Extended. avrebbe bisogno del supporto di terze parti.

    
risposta data 25.06.2015 - 14:54
fonte
2

So che questo è vecchio e ha risposto, ma penso che la sceneggiatura che ho messo insieme dopo una giornata di googling e prova vale la pena di condividerlo.

Modifica le tue opzioni e questo script sposta o copia gli originali in una cartella denominata "aaaa-mm-gg Il nome dell'album". Quindi tieni traccia dei titoli degli album originali e tutte le foto sono ordinate per giorno.

Modifica per adattarsi alle tue esigenze. Faccio questo per poter avere una base di file condivisa di foto originali sincronizzate da dropbox e tutti gli utenti che condividono possono avere la loro copia di Photos.app che la usa come base per le foto di riferimento .

Cerca di evitare di sovrascrivere le foto con lo stesso nome, verificando innanzitutto se esiste già un file non identico nello stesso percorso.

Inoltre, imposta il timestamp delle cartelle appena create sulla data degli eventi che hanno. Bello per ordinare eventi per data nel finder o altro, anche se i nomi delle cartelle iniziano già con la data (perché se li copi altrove, i timestamp possono cambiare comunque).

È compatibile con le virgolette singole nei nomi degli album. Potrebbe essere compatibile con le virgolette, ma NON l'ho provato.

#!/bin/bash

#### A few options ####
#dryrun=1
dryrun=0

# Choose to duplicate (slow, space eating) or move (space saving, fast if on same drive).
#action=cp
action=mv

# set your paths
# origin:
libr="Photos Library.photoslibrary"
# destination:
destpath="MyProperlyOrganizedFotos"

# no idea why Apple chooses a funny date. Adjust to your time-zone needs
dateoffset=978307200
#### End of options ####


sqllib="${libr}"/Database/apdb/Library.apdb
s="sqlite3 ${sqllib}"
#${s} 'select fileName,imageDate,imagePath,projectUuid from RKMaster'

${s} 'select fileName,imageDate,imagePath,projectUuid from RKMaster' | sed 's,",thisisaquotationmark,g' | while read -r line; do
  echo $line
  name='echo "$line" | awk 'BEGIN {FS="|"} {print $1}''
  date='echo "$line" | awk 'BEGIN {FS="|"} {print $2}''
  path='echo "$line" | awk 'BEGIN {FS="|"} {print $3}''
  albumid='echo "$line" | awk 'BEGIN {FS="|"} {print $4}''
  albumname='${s} "select name from RKFolder where uuid == '${albumid}'" | sed -e 's,/,:,g' -e 's,!,,g' -e 's,",thisisaquotationmark,g''
  realdate='date -r $(( ${dateoffset} + ${date} )) '+%Y-%m-%d' '
  touchdate='date -r $(( ${dateoffset} + ${date} )) '+%Y%m%d1200' '

  # does this file still exist? or did we move it already?
  src='echo ${libr}/Masters/${path} | sed 's/thisisaquotationmark/\"/g''
  if [ ! -f "${src}" ]; then
    continue
  fi

  # trim:
  newpath='echo $realdate $albumname | sed 's/thisisaquotationmark/\\"/g''
  if [ ! $dryrun -eq 1 ]; then
    expandednewpath='echo ${newpath}'
    mkdir -p "${destpath}/${newpath}"
    touch -t ${touchdate} "${destpath}/${newpath}"
  fi
  target="${destpath}/${newpath}/${name}"
  index=0

  # add an integer index to a file if the name exists in this path already
  while [ -f "${target}" ] && ! cmp --silent "${target}" "${src}" ; do
    echo 'Avoiding overwrite: ' $index
    index=$(( $index + 1 ))
    target="${destpath}/${newpath}/${name} $index"
  done
  if [ $dryrun -eq 1 ]; then
    echo "Would do ${action} '${src}' '${target}' "
  else
    echo "${action} '${src}' '${target}' "
    ${action} "${src}" "${target}"
  fi
done
    
risposta data 28.08.2016 - 18:51
fonte
1

Foto su disco afferma di fare esattamente questo:

Using Photos To Disk you can retrieve your original photos and videos (including photos in RAW file format) from your Photo Library in just a few easy steps.

You can customize your folder structure to group your media files by year, month or day. For albums, Photos To Disk uses the folder structure defined in Photos.

Media files can be renamed after the titles that you have eventually defined in Photos. You can also prefix file names with media dates or media dates/hours.

Metadata (Title, Description, Location, Keywords, Adjusted Date and Time) can be embedded into JPEG, PNG, TIFF and PSD image files or stored in XMP sidecar files for other image file formats (e.g. RAW).

    
risposta data 30.08.2016 - 15:17
fonte
0

C'è un eccellente Apple Script da link

set dest to "/Users/me/Desktop/export/" as POSIX file as text -- the destination folder (use a valid path)

tell application "Photos"
    with timeout of 180000 seconds
        repeat with i in albums
            set tFolder to dest & (get name of i)
            my makeFolder(tFolder) -- create a folder named (the name of this album) in dest
            export (get media items of i) to (tFolder as alias) without using originals
        end repeat
    end timeout
end tell

on makeFolder(tPath)
    do shell script "mkdir -p " & quoted form of POSIX path of tPath
end makeFolder
    
risposta data 09.10.2016 - 13:24
fonte

Leggi altre domande sui tag