archivos de puntos de enlaces simbólicos a documentos / archivos de puntos

1

Tengo un script de configuración que crea enlaces entre mi repositorio de archivos de puntos y los archivos en la raíz de mi directorio de inicio. En términos generales, el proceso se ve así para cada archivo:

ln -s ~/Documents/Dotfiles/.bash_profile ~/.bash_profile

¿Está esto vinculado en la dirección correcta? Por ejemplo, quiero poder mantener mis personalizaciones en Documents y solo señalarlas. La mayor parte de la documentación que he leído parece asumir un entorno Unix o Linux tradicional, por lo que no estoy seguro de que esto sea correcto.

La parte relevante de mi script de configuración está debajo

#!/bin/bash

set -e

function makeLinks() {
  ln -s ~/Documents/Dotfiles/.bash_aliases ~/.bash_aliases
  ln -s ~/Documents/Dotfiles/.bash_profile ~/.bash_profile
  ln -s ~/Documents/Dotfiles/.bash_prompt ~/.bash_prompt
  ln -s ~/Documents/Dotfiles/.gitconfig ~/.gitconfig
  ln -s ~/Documents/Dotfiles/.gitignore_global ~/.gitignore_global

  read -rp "This may overwrite existing files. Are you sure? (y/n) " -n 1;
  echo "";
  if [[ $REPLY =~ ^[Yy]$ ]]; then
    makeLinks
  fi;
}
    
pregunta Chris 13.08.2018 - 19:15

1 respuesta

1

man ln dice claramente:

ln [-Ffhinsv] source_file [target_file]

Así que sí, tu orden parece razonable.

El script, sin embargo, es impar. makeLinks nunca se invoca y la solicitud de confirmación solo causará recursión. Probablemente quiso colocarlo fuera de la definición de la función.

    
respondido por el idmean 13.08.2018 - 19:22

Lea otras preguntas en las etiquetas