todocontra escribió:@Retrodanuart y sera que alguien con conocimiento pueda hacer el dicho script ? yo tengo el romset de la mame 261 pero solo me interesa los juegos de la lista del arcade 261 pero no tengo idea de como hacer el script para quitar pasar o mover a otra carpeta solo dichos archivos
Yo lo que hago es usar Excel para crear la lista de comandos. Por ejemplo, creas en una columna la orden xcopy, delete, attrib, etc. y la copias hacia abajo cuantas miles de veces necesites. En la columna de al lado pegas tu lista de roms, de snaps o lo que sea y en la tercera columna pones por ejemplo el destino de la copia o el parámetro que necesites, y también lo copias hacia abajo. Si ahora copias todo el texto al portapapeles, lo pegas en un documento de texto y lo guardas como .bat, puedes ejecutarlo y te hará el trabajo.
Lo importante es tener la lista limpia de juegos, snaps o lo que sea. Como el fichero de esa web tiene también los nombres completos de los juegos, no nos vale. Sin embargo, con un poco de ayuda de AutoHotkey y de Chatgpt, se puede hacer un script para modificar ese documento y dejar la lista limpia de lo que queramos. Te pego el código. Lo que hace es quitar de cada línea lo que sigue a partir de cierto carácter, quita los espacios en blanco y añade la extensión que quieras a la lista de ficheros.
InputBox, UserInput, EXTENSION DE FICHEROS (sin punto),,, 300, 100
if ErrorLevel
Exitapp
inputFile := "gamelist.txt"
outputFile := "gamelist_modified.txt"
FileRead, fileContent, %inputFile%
modifiedContent := ""
Loop, parse, fileContent, `n, `r
{
currentLine := A_LoopField
modifiedLine := SubStr(currentLine, 1, 18)
modifiedContent .= modifiedLine . "`n"
}
FileDelete, %outputFile%
FileAppend, %modifiedContent%, %outputFile%
inputFile := "gamelist_modified.txt"
outputFile := "gamelist_trimmed.txt"
FileRead, fileContent, %inputFile%
trimmedContent := ""
Loop, parse, fileContent, `n, `r
{
currentLine := A_LoopField
trimmedLine := RTrim(currentLine)
trimmedContent .= trimmedLine . "`n"
}
FileDelete, %outputFile%
FileAppend, %trimmedContent%, %outputFile%
inputFile := "gamelist_trimmed.txt"
outputFile := "gamelist_with_extension.txt"
FileRead, fileContent, %inputFile%
modifiedContent := ""
lineCounter := 0
totalLines := 0
Loop, parse, fileContent, `n, `r
{
totalLines++
}
lineCounter := 0
Loop, parse, fileContent, `n, `r
{
lineCounter++
if (lineCounter <= 3 || lineCounter > totalLines - 2)
continue
currentLine := A_LoopField
modifiedLine := currentLine . "."Userinput
modifiedContent .= modifiedLine . "`n"
}
FileDelete, %outputFile%
FileAppend, %modifiedContent%, %outputFile%
FileDelete, gamelist_modified.txt
FileDelete, gamelist_trimmed.txt
Exitapp