Red de conocimiento del abogados - Bufete de abogados - ¿El lote Bat identifica caracteres específicos en archivos y los mueve a carpetas con los mismos caracteres específicos?

¿El lote Bat identifica caracteres específicos en archivos y los mueve a carpetas con los mismos caracteres específicos?

Copie y pegue el siguiente código en el Bloc de notas, guárdelo como xx.bat y seleccione ANSI como codificación.

-

& lt#:

cls & amp eco apagado y. Mode control line=5000

Rem copia los archivos en el directorio especificado a la subcarpeta correspondiente en otro directorio según los caracteres de prefijo con el mismo nombre al principio.

set # =Cualquier pregunta & ampWX & amp;set $ = Q & ampset/az=0x53b7e0b4

título %#% +%$%%$%/%_% % z%

omisión de política de ejecución de perfil de powershell "[IO.File]::ReadAllText('%~f0 ',[Text.encoding]::get encoding(' GB 2312 ')| Invocar -Expresión "

Eco;%#% +%$%%$%/%_% %z%

Abortar

Exportar

# & gt

$filepath="D:\Descarga de documento oficial";

$ folderpath = "\ \ IP \ * *Carpeta compartida";

if(-not(test-path-liter $ ruta del archivo)){ write-host('+$ ruta del archivo+' ' "No encontrado'); salir; };

if(-not (test-path-liter $ ruta de carpeta)){ write-host('+$ ruta de carpeta+' ' "No encontrado'); salir; };

$ b =[Convertir]::desde cadena base 64 (" IC 0 tpia = ");

$c=[Texto. codificación]::Predeterminado

$dic = nuevas colecciones de objetos [cadena, Objeto] ';

$files=@(dir -literal $filepath|?{ $_-is[System.IO.FileInfo]});

$carpetas = @(dir- literal$folderpath-recurse|?{$_-is[system.io.directoryinfo]});

for($I=0;$I-lt$ archivos . longitud; $i++){

$ arr = $ archivos[$ I]. nombre base . a lower(). split('-'); p>

if(-no $dic. contiene clave($ arr[0]){

[System. colecciones . ArrayList]$brr = @();

$dic.add($arr[0],$brr);

}

[void ]$dic[$arr[0]]. add($ archivos[$ I]);

}

}

for($ I = 0; $ I-lt $ carpetas . longitud; $ i++){

$arr=$carpetas[$i].Name.toLower().

split('-');

if($arr . length-ge 2){

if ($dic.contains key($ arr[0]){

p>

for($ j = 0; $j -lt $dic[$arr[0]]. Contar; $j++){

$dic[$arr[0]][ $j].Nombre completo+$ c+$carpeta[$i].

}

}

}

}