
Vamos supor a seguinte estrutura de uma pasta chamada scripts
.
├── scripts
│ └── .scripts
│ ├── script1
│ ├── script2
│ └── script3
│ └── .config
│ ├── script4
│ ├── script5
│ └── script6
Ao usar stow scripts
, ambas as pastas scripts
serão vinculadas simbolicamente a ~/.scripts
e ~/.config
.
Posso usar o stow apenas para criar um link simbólico .scripts
sem precisar removê-lo .config
da pasta, mas basicamente ignorando-o?
Responder1
stow
temignorar listasque permite colocar um arquivo chamado .stow-local-ignore
no topo da sua árvore de origem. Nesse caso, você poderia fazer com \.scripts
que o stow ignorasse esse diretório e não o vinculasse à árvore de destino.
Responder2
Vamos apresentar algunsTerminologia de armazenamento:
Por padrãoArrumarpega o diretório atual é o seudiretório de armazenamento, o nome que você digita como argumento na linha de comando como opacote de armazenamentoe o diretório pai como odiretório de destino, então quando você digita:
$ stow scripts
Sem qualquer opção seudiretório de armazenamentoé o diretório atual, scripts
é o seupacotee o pai do diretório atual se torna o stowdiretório de destinoonde o pacote iráaparecera ser instalado (onde os links simbólicos serão criados).
Você pode informar explicitamente odiretório de armazenamentoe apacotevocê deseja instalar na linha de comando como no seguinte comando:
$ stow -d /path_to_scripts_folder/scripts -S .scripts
Onde o scripts
aqui é definido como seudiretório de armazenamentoe .scripts
como seupacoteemTerminologia de armazenamento.
Opcionalmente, você pode especificar o diretório de destino, que é o diretório relativo ao local onde seus arquivos (links simbólicos para seus arquivos) devem ser colocados:
$ stow -d /path/scripts -S .scripts -t ~/
Para testar qualquer uma dessas opções você pode usar o -n
flag que apenas simula as alterações sem modificar seu sistema de arquivos:
$ stow -n -d /path/scripts -S .scripts -t ~/
E se você quiser ver todas as ações que devem ser tomadas você pode adicionar o -v especificando um nível de verbosidade de 0(sem -v
flag) até 3( -vvv
):
$ stow -n -d /path/scripts -S .scripts -t ~/ -vvv
À medida que essas opções se tornam cada vez mais complexas, seria melhor escrever um pequeno script de shell para automatizar seu trabalho e oferecer o máximo de flexibilidade.