XP Batch Files Copia le immagini dalla fotocamera al PC e organizza per data

Questa è una ricetta rapida su come creare un file batch che copierà tutte le tue foto / video da una memory stick o da una fotocamera nella cartella delle mie foto del mio PC (c: \ documenti e impostazioni \ userid \ i miei documenti \ le mie immagini). questo file batch ti mostrerà come impostare un prompt e usare una dichiarazione if / then di base.


ANCHE TEST PRIMA DI USARE SUI FILE IN DIRETTA!

Bene, mi piace organizzare le mie migliaia di cartelle digitali in un tipo di data di gerarchia. io uso un anno> formato di data specifico. quindi la mia cartella "Immagini" appare così;

-[2003]
-[2004]
-[2005]
-[2006]

quindi nella cartella di ogni anno, li ho nominati in un formato MM-DD-YYYY, cioè:
-[01-22-2006]
-[02-14-2006]
-[03-22-2006]
-[04-20-2006]
-[05-12-2006]

Ho deciso che oggi ero stufo di entrare e fare tutte le mie cartelle creando manualmente, così ho scritto un file batch per farlo.

ecco il codice (copia e incolla nel blocco note, quindi salva il file come file di testo, quindi rinomina in estensione .bat per creare un file batch, ad esempio named test.txt, rinomina in test.bat):

    @TO SPENTO
    @REM Autore: seamonkey420 Data: 25/12/06
    @REM Questo è il mio file batch di copia personalizzato per le immagini.
    @REM Creerà una nuova cartella con data odierna nella cartella Immagini.
    @REM NOTA! fai sempre una prova prima! è possibile eseguire il file batch da qualsiasi cartella o percorso
    @REM Nessun controllo errori è attivo, accertarsi di digitare i percorsi come D: o J: se la telecamera
    L'unità @REM è anch'essa sensibile al maiuscolo o al secondo. puoi aggiungerli tu stesso se lo desideri

    @REM Impostazione dei varibles globali
    @REM userfolder è in pratica la guida in cui si trova la mia cartella documenti
    @REM -default dovrebbe andare bene per la maggior parte delle persone con normali installazioni xp
    @REM cameraDrive è l'unità per la tua fotocamera
    @REM type è il tipo di file con cui la tua fotocamera salva le tue immagini poiché la maggior parte sono jpg
    @REM (utilizzato per trovare la cartella dei video sulla fotocamera)

    ECHO seamonkeys camera to pc copione script
    ECO ________________

    SET userfolder = C:
    SET tipo = jpg
    SET / P cameradrive = Inserisci la lettera dell'unità fotocamera (cioè D :) e premi Invio:

    @REM Trova quale sia l'ID utente dell'utente per lo script in esecuzione e quindi lo imposta come variabile utente
    for / f "tokens = 3 delim = \" %% i in ("% USERPROFILE%") DO (imposta utente = %% i)

    @REM analizza mese, giorno e anno in mm, gg, aaaa per creare le cartelle!

    FOR / F "TOKENS = 1 * DELIMS =" %% A IN ('DATE / T') DO SET CDATE = %% B
    FOR / F "TOKENS = 1,2 eol = / DELIMS = /" %% A IN ('DATE / T') DO SET mm = %% B
    FOR / F "TOKENS = 1,2 DELIMS = / eol = /" %% A IN ('echo% CDATE%') DO SET dd = %% B
    FOR / F "TOKENS = 2,3 DELIMS = /" %% A IN ('echo% CDATE%') DO SET yyyy = %% B
    SET date =% mm %% dd %% yyyy%

    @REM Creazione di una cartella nella cartella "mie foto" con il formato [MM-GG-AAAA]
    @REM Cambia anche la directory nella nuova cartella
    @REM -Io uso una gerarchia di anni \ data per ordinare le foto, quindi per esempio:
    @REM - [2006] \ [12-25-2006] \ dsc004.jpg, ecc; lo rende facile da trovare tramite la data

    % Cartellautente%
    CD\
    cd "Documents and Settings \% user% \ My Documents \ My Pictures"
    mkdir "[% yyyy%]"
    cd "[% yyyy%]
    mkdir "[% mm% -% dd% -% yyyy%]"
    cd "[% mm% -% dd% -% yyyy%]"

    @REM Trova il percorso completo di dove sono le foto sulla fotocamera
    @REM e li copia anche nella nuova cartella (limitato a 2 sottocartelle,
    @REM dovrai aggiungere un terzo per l'istruzione se le tue immagini sono nidificate più in profondità e cambia token in 4)

    % CameraDrive%
    FOR / F "TOKENS = 2 DELIMS = \" %% A IN ('dir / b / s *.% Type%') DO SET p1 = %% A
    FOR / F "TOKENS = 3 DELIMS = \" %% A IN ('dir / b / s *.% Type%') DO SET p2 = %% A
    CD "% p1% \% p2%"
    COPIA *. *% Userfolder%

    @REM Elimina il prompt degli originali e quindi le azioni

    SET / P delete = Elimina le foto originali dalla fotocamera (y / n)?

    IF / I "% delete%" == "y" GOTO delY
    IF / I "% delete%" == "n" GOTO delN

    : dely
    % CameraDrive%
    del / q *. *
    explorer.exe "% userfolder% \ Documents and Settings \% user% \ Documenti \ Immagini personali \ [% yyyy%] \ [% mm% -% dd% -% yyyy%]"

    : delN
    explorer.exe "% userfolder% \ Documents and Settings \% user% \ Documenti \ Immagini personali \ [% yyyy%] \ [% mm% -% dd% -% yyyy%]

dopo aver fatto un sacco di scripting in AIX e UNIX per il mio vecchio lavoro, ho scoperto che una sceneggiatura scritta con un sacco di commenti su quali funzioni ti aiuteranno lungo la strada e ti aiuterà a evitare di dimenticare cosa effettivamente fa uno script o un comando.

questo script dovrà essere modificato se non si utilizza la posizione predefinita delle immagini sul PC (cioè se hai spostato la mia cartella documenti in un percorso diverso, questo script non funzionerà così com'è).

fa quanto segue

1. ti verrà chiesto per quale lettera di unità è stata scattata la tua fotocamera digitale o la tua memoria, assicurati di usare un colan (cioè D:)

2a. dopo averlo fatto, andrà nella cartella delle mie foto, creerà una cartella per l'anno corrente nel formato [yyyy] (es. [2006]), quindi in quella cartella creerà una nuova cartella con la data odierna (cioè [12] -25-2006]).

2b. inoltre, andrà nell'unità principale della tua fotocamera / memory stick e cercherà di trovare la posizione della cartella in cui sono salvate le tue immagini (sarà solo 2 livelli profondi, puoi aggiungere una linea per risolvere questo problema se hai una cartella nidificata più profonda che la tua fotocamera usi)

3. quindi copierà tutti i file sulla fotocamera / memory stick qui.

4.infine, ti chiederà se vuoi rimuovere i file originali dalla fotocamera / memory stick e quindi aprire la cartella in cui sono state copiate le foto sul tuo pc.

-SUGGERIMENTI:
-se la tua fotocamera salva i file come tiiff o bmps, cambia il "SET type = jpg" in tiff o bmp.
-cambiare ECHO OFF su ECHO ON per visualizzare gli errori o l'output in caso di problemi durante l'esecuzione dello script. aggiungi anche un comando di pausa alla fine in modo da poter analizzare completamente ciò che lo script sta facendo.
-È possibile eseguire questo script da qualsiasi posizione e dovrebbe analizzare correttamente.
-read il mio REM nel file batch per spiegare quali sezioni sono / sono!