Mit Befehlen wie rsync
und scp
mit ZSH
habe ich Probleme bekommen. Anstelle des (normalen) Verhaltens, mir alle passenden Dateien zu geben, wird es nicht ausgeführt und gibt Folgendes zurück:
➜ ~ rsync -azP user@server:~/* ~/
zsh: no matches found: user@server:~/*
Wie kann ich das beheben?
Meine .zshrc
ZSH=$HOME/.oh-my-zsh
ZSH_THEME="robbyrussell"
plugins=(git brew)
source $ZSH/oh-my-zsh.sh
export PATH=$PATH:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/local/sbin
bash
.rsync
jemals gesehen wird. Könnte es sein, dass Sie auf beiden Servern nur denselben Pfad für das Basisverzeichnis verwendet haben?bash
eine Tilde nur, wenn sie mit einem Wort beginnt , oder ist das erste Zeichen nach einem:
oder dem ersten=
in einer variablen Zuweisung. Ansonsten wird es wörtlich behandelt.Ich benutze zpretzo seit einigen Monaten und habe dieses Problem auch erlebt. Ich habe eine nette und nützliche Lösung gefunden, wenn Sie keine Änderungen vornehmen möchten: Stellen Sie dem Befehl einfach einen Backslash voran.
Ich hoffe das hilft!
quelle
Dies löst Ihr Problem, ohne die URLs manuell angeben zu müssen
quelle
zsh -f
für eine kanonische Shell-Konfiguration), kopieren Sie die Befehle in Ihre Shell und geben Sie Ihrenrsync
Befehl ein (oder fügen Sie ihn ein) . Sie werden die Magie bei der Arbeit sehen ;-) (spezielle Zeichen an der URL werden automatisch zitiert)