
Nehmen wir die folgende Struktur eines Ordners namens an scripts
.
├── scripts
│ └── .scripts
│ ├── script1
│ ├── script2
│ └── script3
│ └── .config
│ ├── script4
│ ├── script5
│ └── script6
Bei Verwendung werden stow scripts
beide Ordner darin mit und symbolisch verknüpft .scripts
~/.scripts
~/.config
Kann ich Stow verwenden, um nur einen symbolischen Link zu erstellen, .scripts
ohne ihn aus dem Ordner entfernen zu müssen .config
, sondern ihn einfach grundsätzlich zu ignorieren?
Antwort1
stow
hatIgnorierlistenDamit können Sie eine Datei mit dem Namen .stow-local-ignore
oben in Ihrem Quellbaum ablegen. Sie können festlegen, \.scripts
dass stow dieses Verzeichnis ignoriert und nicht mit dem Zielbaum verknüpft.
Antwort2
Lassen Sie uns einige vorstellenStow-Terminologie:
StandardmäßigVerstauennimmt das aktuelle Verzeichnis ist IhreStow-Verzeichnis, der Name, den Sie als Argument in der Befehlszeile eingeben, alsVerstaupaketund das übergeordnete Verzeichnis alsZielverzeichnis, wenn Sie also Folgendes eingeben:
$ stow scripts
Ohne jede Option IhreStow-Verzeichnisist das aktuelle Verzeichnis, scripts
ist IhrPaketund das übergeordnete Verzeichnis des aktuellen Verzeichnisses wird zum stowZielverzeichniswo das Paketerscheinenzu installieren (wo die symbolischen Links erstellt werden).
Sie können dies ausdrücklich mitteilenStow-Verzeichnisund dasPaketSie möchten in der Befehlszeile installieren, wie im folgenden Befehl:
$ stow -d /path_to_scripts_folder/scripts -S .scripts
Wobei das scripts
„Hier“ definiert ist als IhrStow-Verzeichnisund .scripts
als IhrPaketInStow-Terminologie.
Optional können Sie das Zielverzeichnis angeben, also das Verzeichnis relativ zum Speicherort Ihrer Dateien (symmetrische Links zu Ihren Dateien):
$ stow -d /path/scripts -S .scripts -t ~/
Um eine dieser Optionen zu testen, können Sie das -n
Flag verwenden, das die Änderungen simuliert, ohne Ihr Dateisystem zu ändern:
$ stow -n -d /path/scripts -S .scripts -t ~/
Wenn Sie alle auszuführenden Aktionen sehen möchten, können Sie -v hinzufügen und damit eine Ausführlichkeitsstufe von 0 (keine -v
Flagge) bis 3 ( -vvv
) angeben:
$ stow -n -d /path/scripts -S .scripts -t ~/ -vvv
Da diese Optionen immer komplexer werden, könnte es besser sein, ein kleines Shell-Skript zu schreiben, um Ihre Arbeit zu automatisieren und Ihnen maximale Flexibilität zu geben.