Como encuntrar un archivo y copiar su ruta en cmd

Necesito saber en que carpeta se encuentra un archivo, el nombre del archivo es cre_usage. Py, cambiar de directorio en cmd con esa dirección y aumentar otro comando que es código duro, cuando termine copiar el resultado en una celda de excel.

Por ejemplo:
C:\windows\producto\bin (aqui estaria "cre_usage.py" )
Abrir cmd moverme a esta ruta aumentar otro comando
Cuando termine copiar el resultado en una celda de excel.

1 Respuesta

Respuesta
2

No sé por qué no me ha entrado esta consulta en mi dirección de correo. La he visto al entrar en la página.

La parte que puedo resolverte es la de localizar el archivo en el disco en el que esté el bat que te propongo. El bat a ejecutar sería este:

@echo off
set archivo=cre_usage.py
cd \
for /f "tokens=*" %%a in ('dir /s/b %archivo%') do cd %%~dpa
dir %archivo%

En la variable archivo cargas el nombre del archivo a buscar y donde he puesto el comando dir pondrías el comando a ejecutar que se supone que está en la misma carpeta que el archivo buscado. Si esto no se ajusta a tus necesidades puede ser un buen comienzo para encontrar lo que buscas.

Para pasar el resultado del comando a una celda Excel tendrías que concretar un poco, por ejemplo si se trata de pasarlo a un libro Excel ya existente o a uno nuevo. En este segundo caso una manera sería desviar la salida del comando a un archivo con extensión CSV, pero no sé si esto te servirá.

Gracias por la información, me gustaría saber como ejecutar varios comando por ejemplo:

cd c:\
dir /b/s cre_usage.py >C:\myfile.txt

Set /P _test=<myfile.txt

Y para pegar el resultado a excel si seria pegar a un libro de excel ya existente a una celda en la hoja4 en C6

No entiendo muy bien a que te refieres con lo de "ejecutar varios comandos". Lo que te proponía era un BAT, que, como supongo ya sabrás, es una forma de provocar la ejecución de varios comandos. Por tanto debo suponer que no es a esto a lo que te refieres. El ejemplo que aportas parece también un BAT o parte de él. Si guardas en el archivo MYFILE.TXT el resultado de la búsqueda del DIR debo suponer que es porque puede haber más de una carpeta que contenga el archivo de nombre CRE_USAGE. PY. Pero el SET /P que sigue no va a guardar en la variable _TEST nada más que la primera de esas ubicaciones. En el BAT que proponía yo la variable del bucle FOR contendría, en cambio, la última de las ubicaciones al terminar el comando.

Pero, en todo caso, si lo que quieres es guardar en la celda C6 de la Hoja4 de un libro Excel ya existente esa ubicación creo que tendrías que lanzar Excel desde el BAT indicando el libro que quieres abrir y que ese libro tenga una macro Auto_Open (creo que se llama así, no domino Excel) que haga ese trabajo de copiar en la celda el contenido, bien de un parámetro o de un archivo. En este enlace puedes ver algo de esto:

http://www.raymundoycaza.com/abrir-excel-desde-la-linea-comando-pasarle-parametros/ 

Si te he entendido mal puedes intentarlo de nuevo. Al final acabaremos entendiéndonos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas