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!