GNU Stow: Como guardar apenas arquivos / pastas selecionados?

4

Vamos supor a seguinte estrutura de uma pasta chamada scripts .

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

Ao usar stow scripts , as duas pastas em scripts serão vinculadas a ~/.scripts e ~/.config .

Posso usar o armazenamento para apenas o link simbólico .scripts sem ter que remover .config da pasta, mas basicamente ignorando-o?

    
por orschiro 28.03.2014 / 08:23

2 respostas

10

stow tem ignorar listas que permitem colocar um arquivo chamado .stow-local-ignore no topo da sua árvore de origem. Nesse caso, você poderia colocar \.scripts para que a propriedade ignore o diretório e não o vincule à árvore de destino.

    
por 28.03.2014 / 08:37
1

Vamos introduzir uma terminologia da Stow :

Por padrão Stow leva o diretório atual a ser o seu diretório stow , o nome que você digita como argumento na linha de comando como o < strong> stow package e o diretório pai como o diretório de destino , portanto, quando você digita:

$ stow scripts

Sem nenhuma opção, seu diretório de armazenamento é o diretório atual, scripts é seu pacote e o pai do diretório atual se torna o diretório de destino onde o pacote aparecerá a ser instalado (onde os links simbólicos serão criados).

Você pode informar explicitamente o diretório de armazenamento e o pacote que 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 seu diretório de armazenamento e .scripts como seu pacote na Terminologia de armazenamento .

Opcionalmente, você pode especificar o diretório de destino, que é o diretório relativo a 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 sinalizador -n 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 detalhamento de 0 (sem -v flag) até 3 ( -vvv ):

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

À medida que essas opções se tornam mais e mais complexas, pode ser melhor escrever um pequeno script de shell para automatizar seu trabalho e dar a você o máximo de flexibilidade.

    
por 10.06.2017 / 22:18

Tags