Acceder a archivos descargados desde WSL

Acceder a archivos descargados desde WSL

Problema

Para acceder a un archivo descargado recientemente, necesito:

  • navegue hasta la ubicación de descarga de Windows
  • mvarchivo de regreso a la ubicación de inicio de WSL

lo que he probado

  • Cambiar la ubicación de descarga en Chrome: esto no es intuitivo porque me reciben rutas de archivos al estilo de Windows C:\. No está claro cómo proporcionar una ruta de archivo basada en Linuxhome/geoff

Pregunta

¿Existe una forma más sencilla de acceder a los archivos descargados recientemente?

Respuesta1

Vieja pregunta que fue eliminada hoy, por lo que incluimos otra nueva respuesta.

Cada una de las otras respuestas tiene algunos problemas que, en mi humilde opinión, las hacen subóptimas para la pregunta tal como se formuló:

¿Existe una forma más sencilla de acceder a los archivos descargados recientemente (desde WSL)?

En mi humilde opinión, la forma más sencilla de hacerlo es simplemente creando un enlace simbólico en WSL a su carpeta de descargas de Windows:

ln -s /mnt/c/Users/<windows_username>/Downloads ~/downloads

Todas sus descargas de Windows serán accesibles directamente en su ~/downloadscarpeta en WSL.

Nota: Razones por las que desaconsejo el uso de las otras respuestas (actuales):

  • Moviendo el archivoa posteriori no es una mala opción, pero es sólo un paso más. También, tal como está escrito, solo funciona para el archivo descargado más recientemente. Si está descargando varios archivos, deberá ejecutarlo manualmente después de cada descarga.

  • Me gustaría disculparme por mi reciente voto a favorLa respuesta de @harrymc. Definitivamente no lo leí con suficiente atención. Esta ruta (a) solo está disponible en WSL1, pero incluso entonces (b) nunca debe usarse, ya que probablementecausar corrupción del sistema de archivos.

  • Cambiar la ubicación de descarga predeterminadaen el navegador ciertamente funciona, y aplaudo el buen gusto de usar Vivaldi, pero la mayoría de los usuarios probablemente no querrán descargartodoarchivos a WSL, sólo unos pocos seleccionados.

    También tenga en cuenta que descargar directamente a la carpeta desde Vivaldi (por experiencia personal) tiene un efecto secundario interesante. Cuando se inicia Vivaldi (y quizás otros navegadores, pero no puedo estar seguro), escanea la lista de archivos descargados recientemente y parece realizar algún tipo de operación de "lectura" en ellos. Si hay un archivo que se descargó directamente en la \\wsl.localhost\<distro>ruta, acceder a ese archivo hará que se inicie la distribución WSL.

    La única razón por la que noté esto fue que tenía la debugShell=trueopción WSL (ahora obsoleta) configurada en mi archivo .wslconfig. Esto hace que se abra una ventana de depuración cada vez que se inicia WSL. Me tomó varios días descubrir por qué WSL se iniciaba poco después de reiniciar mi computadora ;-).

Respuesta2

¿Existe una forma más sencilla de acceder a los archivos descargados recientemente?

Solución

  • podemos encontrar la ruta de descargas de Windows traducida a WSL
  • mover la descarga reciente a la ubicación actual

agregue esta función a .zshrc o .bashrc

getRecentDownload() {
    windowsDownloadsLocation="/mnt/c/Users/<your_username>/Downloads"
    fileNameRecentDownload=$(ls -Art $windowsDownloadsLocation | tail -1)
    mv "$windowsDownloadsLocation/$fileNameRecentDownload" .
}

Cómo utilizar

  • sourcesolo se requiere la primera vez que se usa
geoff@DESKTOP-DSQFUUU:~$ source ~/.bashrc
geoff@DESKTOP-DSQFUUU:~$ getRecentDownload

Respuesta3

Me gusta la idea de crear una función de shell como se mencionó anteriormente, pero también es posible configurar su carpeta de descarga predeterminada como:

\\wsl.localhost\DISTRIBUTION\home\USERNAME\Downloads

Al menos eso me funciona en Vivaldi (navegador tipo Chrome).

Respuesta4

Advertencia: aunque las utilidades de Windows pueden descargar archivos fácilmente en carpetas WSL, no intente descargarlos directamente a estas carpetas, que se encuentran en %LOCALAPPDATA%\Packages.

El artículo de Microsoft No cambie archivos de Linux usando aplicaciones y herramientas de Windows explica que WSL Linux utiliza sus propios metadatos y no la información de Windows sobre los archivos. Esto significa que un archivo creado con Windows probablemente aparecerá en Linux vacío y sin permisos.

Microsoft ha estado trabajando en la compatibilidad recíproca de Windows y WSL Linux, pero en 2023 parece que el camino aún es largo para lograr una compatibilidad total.

información relacionada