25Aug

¿Cómo se hace que aparezca un solo archivo en varias carpetas al mismo tiempo?

click fraud protection

Si tiene un gran número de carpetas configuradas para su trabajo y necesita usar el mismo archivo de script en todas ellas durante el día de trabajo, ¿cuál es la forma más sencilla de lograr eso más allá de una gran cantidad de copiar y pegar? La publicación SuperUser Q & A de hoy tiene algunas respuestas útiles y consejos para un lector frustrado.

Pregunta de hoy &La sesión de respuesta nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, una agrupación de sitios web Q & A dirigida por la comunidad. Captura de pantalla de

cortesía de csaveanu( Flickr).

La Pregunta

SuperUser reader Elliot está buscando la mejor manera de tener el mismo archivo en varias carpetas al mismo tiempo:

Tengo más de 50 carpetas, cada una de las cuales contiene una gran cantidad de datos que deben procesarse. Todos ellos se procesan utilizando el mismo código exacto, utilizando os.path.dirname( os.path.realpath( file)) para obtener el directorio en el que se encuentra el script de python, por lo que el usuario no necesita una edición manual., solo necesitan hacer doble clic.

instagram viewer

Necesito que la secuencia de comandos aparezca como si estuviera en cada carpeta mientras estuviese en un solo lugar para poder editarla una vez, y luego, cuando se ejecute desde cualquiera de estas ubicaciones, la ruta de la carpeta sea correcta. La alternativa es editar el master y luego pegarlo en una carpeta a la vez a través de las más de 50 carpetas cada vez que actualizo el código, lo cual es muy tedioso y propenso a errores. En Linux, pude configurar esto con un enlace simbólico, pero no puedo encontrar la manera de hacerlo con Windows.

Alternativamente, una forma de pegar el archivo en todos los directorios de destino a la vez, en lugar de uno a la vez, lograría el mismo objetivo.

¿Hay alguna manera de hacer esto en lugar de copiar y pegar el archivo de script una carpeta a la vez?

La respuesta

SuperUser contribuidor gronostaj tiene la respuesta para nosotros:

Necesita un Symbolic Link o un Hard Link .

Los enlaces simbólicos ( o los Symlinks para abreviar) son bastante similares a los accesos directos: hay un archivo real y múltiples referencias( Symlinks ).Incluso tienen esa pequeña flecha en los iconos. A diferencia de los accesos directos, Symlinks puede tener cualquier extensión. Enlaces duros

vincula un archivo en un disco duro a una ubicación en el árbol de directorios. Cada archivo tiene al menos un Hard Link , de lo contrario no existiría en ningún directorio. Si un archivo tiene múltiples Hard Links , el original no se puede distinguir de los demás y el archivo existe físicamente en una sola ubicación.

Ambos tienen sus limitaciones:

  • Algunos software no funcionan bien con los Symlinks .
  • La eliminación del archivo original deja todos sus Symlinks rotos.
  • No puede carpetas de enlace rígido( pero puede crear una unión de directorio si Symlink no es suficiente).
  • Creación de de división cruzada. es imposible. Los

Symlinks suelen ser suficientes.

Para crear un vínculo simbólico o un enlace rígido:

1. Inicie una línea de comando con privilegios: presione clave de Windows , escriba cmd , luego presione Ctrl + Mayús + Ingrese .

2. Emita el comando mklink:

  • mklink link_name link_target para un archivo Symlink
  • mklink / d link_name link_target para una carpeta Symlink
  • mklink / h link_name link_target para un archivo Hard Link
  • mklink / j link_name link_target para Directorio de unión

¿Tiene algo que agregar a la explicación? Suena apagado en los comentarios.¿Desea leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Mira el hilo de discusión completo aquí.