Archivos por lotes de XP Copie imágenes de la cámara a la PC y organice por fecha

Esta es una receta rápida sobre cómo crear un archivo por lotes que copiará todas sus fotos / videos desde una tarjeta de memoria o cámara a la carpeta de imágenes de mi PC (c: \ documents and settings \ userid \ my documents \ my pictures). este archivo de proceso por lotes le mostrará cómo configurar un aviso y usar una instrucción básica if / then.


TAMBIÉN PRUEBA ANTES DE USAR EN ARCHIVOS EN VIVO!

Bueno, me gusta organizar mis miles de carpetas digitales en un tipo de fecha de jerarquía. Yo uso un año> formato de fecha específica. así que mi carpeta "Mis imágenes" se ve así;

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

Luego, en la carpeta de cada año, los he nombrado en un formato MM-DD-YYYY, es decir:
-[01-22-2006]
-[02-14-2006]
-[03-22-2006]
-[04-20-2006]
-[05-12-2006]

Decidí que hoy estaba harto de ir y hacer todas mis carpetas creando manualmente, así que escribí un archivo por lotes para hacer esto.

Aquí está el código (copie y pegue en el bloc de notas. Luego guarde el archivo como un archivo de texto. Luego cambie el nombre a una extensión .bat para crear un archivo por lotes; es decir, denominado test.txt, cambie el nombre a test.bat):

    @ECHO OFF
    @REM Autor: seamonkey420 Fecha: 25/12/06
    @REM Este es mi archivo de copia personalizada por lotes para imágenes.
    @REM Creará una nueva carpeta con fecha de hoy en la carpeta Mis imágenes.
    @REM NOTE! ¡Siempre haga una prueba primero! Puede ejecutar el archivo por lotes desde cualquier carpeta o ruta
    @REM No hay ninguna comprobación de errores, asegúrese de escribir las rutas como D: o J: si la cámara
    La unidad @REM es la D o J. distingue entre mayúsculas y minúsculas Usted puede agregar estos si usted desea

    @REM Configuración de las variables globales
    La carpeta de usuario @REM es básicamente la unidad en la que se encuentra la carpeta Mis documentos.
    @REM -default debería estar bien para la mayoría de las personas con instalaciones normales de xp
    @REM cameraDrive es el disco para tu cámara
    El tipo @REM es el tipo de archivos en los que la cámara guarda sus imágenes, la mayoría son archivos jpg
    @REM (usado para encontrar la carpeta de videos en la cámara)

    ECHO seamonkeys cámara para copia de pc script
    ECO ________________

    SET userfolder = C:
    SET tipo = jpg
    SET / P cameradrive = Ingrese la letra de unidad de la cámara (es decir, D :) y presione Enter:

    @REM encuentra lo que su ID de usuario es para el usuario que ejecuta el script y luego lo establece como una variable de usuario
    para / f “tokens = 3 delims = \” %% i in (“% USERPROFILE%”) DO (establecer usuario = %% i)

    @REM analiza mes, día y año en formatos mm, dd, yyyy para crear carpetas a partir de!

    FOR / F “TOKENS = 1 * DELIMS =” %% A IN ('DATE / T') DO SET CDATE = %% B
    FOR / F “TOKENS = 1,2 eol = / DELIMS = /” %% A IN ('DATE / T') HACER AJUSTE 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%') SET SET yyyy = %% B
    SET fecha =% mm %% dd %% yyyy%

    @REM Creación de una carpeta en la carpeta 'mis imágenes' con el formato [MM-DD-YYYY]
    @REM También cambia el directorio a la nueva carpeta
    @REM: uso una jerarquía de fecha y año para ordenar las fotos, por ejemplo:
    @REM - [2006] \ [12-25-2006] \ dsc004.jpg, etc; mantiene fácil de encontrar a través de la fecha

    % userfolder%
    discos compactos\
    cd “Documentos y configuraciones \% usuario% \ Mis documentos \ Mis imágenes”
    mkdir "[% aaaa%]"
    cd "[% aaaa%]
    mkdir "[% mm% -% dd% -% aaaa%]"
    cd “[% mm% -% dd% -% aaaa%]”

    @REM encuentra la ruta completa de dónde están las fotos en la cámara
    @REM y también los copia a la nueva carpeta (limitado a 2 subcarpetas,
    @REM deberá agregar una tercera declaración si sus imágenes están anidadas y cambia el token a 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%”
    COPY *. *% Userfolder%

    @REM Elimina los mensajes originales y luego las acciones.

    SET / P delete = ¿Borrar fotos originales de la cámara (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% \ My Documents \ My Pictures \ [% yyyy%] \ [% mm% -% dd% -% yyyy%]"

    : delN
    explorer.exe "% userfolder% \ Documents and Settings \% user% \ My Documents \ My Pictures \ [% yyyy%] \ [% mm% -% dd% -% yyyy%]

después de hacer un montón de scripts en AIX y UNIX para mi antiguo trabajo, encontré que un script escrito de forma limpia con un montón de comentarios sobre las funciones que hacen le ayudará en el camino y ayudará a evitar el olvido de lo que realmente hace un script o comando.

este script deberá modificarse si no está utilizando la ubicación predeterminada de mis imágenes en su PC (es decir, si movió la carpeta Mis documentos a una ubicación diferente, esta secuencia de comandos no funcionará como está).

hace lo siguiente

1. le preguntará por qué letra de unidad es su cámara digital o dispositivo de memoria de su copia, asegúrese de usar un colan (es decir, D:)

2a. después de hacer eso, irá a la carpeta de mis imágenes, creará una carpeta para el año actual en formato [aaaa] (es decir, [2006]), luego en esa carpeta, cree una nueva carpeta con fecha de hoy (es decir, [12 -25-2006]).

2b. también, irá a la unidad raíz de su cámara / dispositivo de memoria e intentará encontrar la ubicación de la carpeta donde se guardan sus imágenes (solo tendrá 2 niveles de profundidad, puede agregar una línea para solucionar este problema si tiene carpetas anidadas más profundas que usa tu camara)

3. luego copiará todos los archivos de la cámara / dispositivo de memoria aquí.

4.por último, le preguntará si desea eliminar los archivos originales de la cámara / dispositivo de memoria y luego abrir la carpeta donde se copiaron las fotos en su computadora.

-CONSEJOS:
-si su cámara guarda archivos como tiiffs o bmps, cambie "SET type = jpg" a tiff o bmp.
-Cambie ECHO OFF a ECHO ON para ver los errores o resultados si tiene problemas al ejecutar el script. También agregue un comando de pausa al final para que pueda analizar completamente lo que hace el script.
-Usted puede ejecutar este script desde cualquier ubicación y debería analizar correctamente.
-Lee mi REM en el archivo por lotes para explicar qué secciones hacen / son!