2012-01-28 15 views
15

Pero estoy buscando un código que permita a cualquier usuario que use mi archivo por lotes acceder a sus documentos. La idea es que escribirían 3, presionar enter, y luego el programa abriría su carpeta "Mis documentos".Lote para abrir una carpeta dentro de la carpeta de un usuario (c: users usernamehere my documents)?

Desafortunadamente, cada usuario tiene un nombre diferente, por lo que el siguiente comando no funcionará a menos que tenga un nombre específico después de él.

%SystemRoot%\explorer.exe c:\users\James\My Documents 

¿Hay algún tipo de reemplazo para el "James"? Un comando universal?

+0

Esta [pregunta también se realiza en ServerFault] (http://serverfault.com/questions/10938/finding-users-documents-folder-in-bat-script). [Esta es la mejor respuesta] (http://serverfault.com/a/185847/12770), que también representa a los usuarios que han movido su carpeta especial Documentos. –

Respuesta

25

Usted puede utilizar la variable %UserProfile% medio ambiente, lo que apunta directamente a la carpeta personal del usuario conectado:

%SystemRoot%\explorer.exe %UserProfile%\My Documents 

-Si está utilizando Windows 7 acaba de hacer explorer% USERPROFILE% \ Documents (debe trabajo con otros Windows pero no lo he intentado ...)

esto es porque cualquier exe en la raíz del sistema puede usarse como un comando y que yo sepa la mayoría de las versiones de Windows tienen una carpeta llamada "Documentos" no "Mi Documentos "simplemente aparece de esa manera para el usuario (lo mismo para Música, etc.)

+2

La parte 'Mis documentos' no está arreglada. Varía según las versiones de Windows y el lenguaje de instalación. – salva

+1

Esto no funciona de manera confiable. Windows permite a los usuarios mover su carpeta Mis documentos a otros lugares, de modo que no esté directamente debajo de su ubicación% Perfil de usuario. –

Cuestiones relacionadas