GNU Stow: ¿Cómo guardar solo archivos/carpetas seleccionadas?

GNU Stow: ¿Cómo guardar solo archivos/carpetas seleccionadas?

Supongamos la siguiente estructura de una carpeta llamada scripts.

├── scripts
│   └── .scripts
│       ├── script1
│       ├── script2
│       └── script3
│   └── .config
│       ├── script4
│       ├── script5
│       └── script6

Al usar stow scripts, ambas carpetas dentro scriptstendrán un enlace simbólico a ~/.scriptsy ~/.config.

¿Puedo usar stow solo para crear enlaces simbólicos .scriptssin tener que eliminarlos .configde la carpeta pero básicamente ignorarlos?

Respuesta1

stowtieneignorar listasque le permite colocar un archivo llamado .stow-local-ignoreen la parte superior de su árbol de fuentes. En eso, podría hacer \.scriptsque stow ignore ese directorio y no lo vincule al árbol de destino.

Respuesta2

Introduzcamos algunosTerminología de almacenamiento:

Por defectoEstibartoma el directorio actual es sudirectorio de almacenamiento, el nombre que escriba como argumento en la línea de comando comoguardar paquetey el directorio principal como eldirectorio de destino, entonces cuando escribes:

$ stow scripts

Sin ninguna opción tudirectorio de almacenamientoes el directorio actual, scriptses supaquetey el padre del directorio actual se convierte en el stowdirectorio de destinodonde estará el paqueteaparecerque se instalará (donde se crearán los enlaces simbólicos).

Puede informar explícitamente aldirectorio de almacenamientoy elpaquetedesea instalar en la línea de comando como en el siguiente comando:

$ stow -d /path_to_scripts_folder/scripts -S .scripts

Donde el scriptsaquí se define como tudirectorio de almacenamientoy .scriptscomo tupaqueteenTerminología de almacenamiento.

Opcionalmente, puede especificar el directorio de destino, que es el directorio relativo a donde se deben colocar sus archivos (enlaces simbólicos a sus archivos):

$ stow -d /path/scripts -S .scripts -t ~/

Para probar cualquiera de estas opciones, puede usar la -nbandera que simplemente simula los cambios sin modificar su sistema de archivos:

$ stow -n -d /path/scripts -S .scripts -t ~/

Y si desea ver todas las acciones que se deben realizar, puede agregar -v especificando un nivel de detalle desde 0 (sin -vbandera) hasta 3 ( -vvv):

$ stow -n -d /path/scripts -S .scripts -t ~/ -vvv 

A medida que estas opciones se vuelven cada vez más complejas, podría ser mejor escribir un pequeño script de shell para automatizar su trabajo y brindarle la máxima flexibilidad.

información relacionada