CASO DE USO

CASO DE USO

Win10, aunque espero que se aplique igualmente desde 7up.

si hago eco %USERPROFILE%, devuelve una letra de unidad de C:\~ Eso es correcto.

Sin embargo, mis carpetas Documentos, Imágenes, Música, etc. están en la H:unidad. De alguna manera, Win10 "sabe" esto porque redirige fuera del C:disco.

En el pasado, solía %USERPROFILE%hacer referencia a archivos a lo largo del árbol de carpetas (por ejemplo, en accesos directos), pero ahora que tengo un sistema de unidad dividida no sé cómo hacer referencia a la redirección.

¿Algunas ideas?

Respuesta1

Abra una ventana de PowerShell y ejecute:

[Enum]::GetNames([Environment+SpecialFolder]) | ? {$_ -like "My*" } | % { $_ + ": " + [Environment]::GetFolderPath($_)}

si devuelve algo como:

MyDocuments: H:\...
MyMusic: H:\...
MyVideos: H:\...
MyComputer: 
MyPictures: H:\...

entonces alguien cambió la ubicación de estas carpetas, puede volver a cambiarlas abriendo las propiedades de estas carpetas en el Explorador de archivos y haciendo clic en la Locationpestaña.

Para usar la ubicación correcta MyDocumentsen un acceso directo, puede usar:

explorer.exe shell:::{A8CDFF1C-4878-43be-B5FD-F8091C1C60D0}\folder1\folder2

esto abrirá H:\documents\folder1\folder2 en el Explorador de archivos.

Todas las carpetas especiales tienen un GUID único, hay una buena lista enDiezForos

No creo que puedas usar estos GUID directamente en cmd.exe, pero en PowerShell puedes hacer:

cd $([Environment]::GetFolderPath('MyMusic'))

Respuesta2

Resolví mi problema creando SETXdos nuevas variables de entorno: myUSERPROFILEy myHOMEDRIVE. Se utilizan en accesos directos que apuntan a mis datos basados ​​en la nube en OneDrive, Dropbox, GoogleDrive, etc.

CASO DE USO

El propósito es abstraer los accesos directos de la máquina local a la generalidad de todas las máquinas en las que trabajo.

Específicamente, tengo una SurfacePro 4, una computadora de escritorio, una computadora portátil (dedicada al centro multimedia a través de su amplificador) y luego las computadoras portátiles que los clientes me dan para trabajar de vez en cuando.
Cada uno de ellos tiene diferentesNombres de USUARIOyunidades de casadeterminado por el lote de red del cliente.
En mis escritorios tengo 4 accesos directos que apuntan a carpetas en la nube ~Imágenes entrantes;Lectura;Referencia rápida;Documentos entrantes. Los atajos toman la forma

"%myUSERPROFILE%\Documents\Dropbox (Work)\Incoming docs"

Cualquiera que sea el acceso directo en el que haga clic, independientemente de la computadora en la que me encuentre, abre la carpeta basada en la nube.
Al soltar un archivo en la carpeta de accesos directos, se envía al lugar correcto.
Algunas de las carpetas tienen accesos directos que apuntan a los archivos o carpetas de mis repositorios de datos.
La carpeta Referencia rápida, por ejemplo, tiene accesos directos a todo, desde horarios y horarios hasta datos técnicos y protocolos del Cliente.
Todos estos permanecen permanentemente en sus diversos repositorios de datos: solo en mis bibliotecas tecnológicas hay más de 3500 archivos PDF. (También uso calibre para generar metadatos).

PROCESO

crear las variables

Cuando consigo trabajar en una nueva máquina, este archivo por lotes se ejecuta en modo Administrador:

:: setEnvVariables.bat
:: Step 1, set variables
echo Enter the home drive, default is %HOMEDRIVE%
SET /P localHOMEDRIVE=%HOMEDRIVE%
echo Enter the User prefix, default is %USERPROFILE%
SET /P localUSERPROFILE=%USERPROFILE%
SETX myHOMEDRIVE localHOMEDRIVE
SETX myUSERPROFILE localUSERPROFILE

echo: Step 2. check that they work
echo: =====: flip drives, land on home data drive
C:
echo: =====: directory of folders in root C:\ drive
DIR /b /ad
PAUSE
%myHOMEDRIVE%
cd\
echo: =====: directory of folders in root data drive
DIR /b /ad
PAUSE
cd %myUSERPROFILE%\Documents
echo: =====: directory of folders in Documents folder
DIR /b /ad
PAUSE
echo: ====: directory of folders in Dropbox folder
cd %myUSERPROFILE%\Documents\Dropbox (Personal)
DIR /b /ad
PAUSE
:: ...etc all the other cloud based repositories. 

Un atajo típico en la carpeta de lectura sería

"%OneDrive%\My Digital Editions\~ Knowledge\Consultancy\Business\Big Data_CDI_MDM\Path-to-Predictive-Analytics-and-Machine-Learning.pdf"

O podría simplemente colocar el archivo en la carpeta como se explicó anteriormente y archivarlo en el repositorio apropiado (ruta de la carpeta) si creo que vale la pena conservarlo.
Cuando devuelvo las máquinas cliente, elimino las dos variables de entorno. . . ¡por supuesto!

crear las carpetas de acceso directo

Mantengo una carpeta en la nube con el archivo por lotes anterior y domino los accesos directos a estos accesos directos a las carpetas.

Estos simplemente se arrastran al escritorio y se sueltan allí.

Dado que estos son sólo accesos directos, los considero "carpetas virtuales" o "escritorios virtuales". Ya no hay datos en el escritorio. Si necesito una carpeta especial (por ejemplo, para un proyecto de cliente), simplemente creo un acceso directo a la carpeta en la nube y las variables de entorno se hacen cargo desde allí.

Ahora estoy listo para usar la nueva computadora.

información relacionada