Wenn ich scp über zsh versuche, bekomme ich
scp hostA:Descargas/debian-6.0.4-* user@192.168.1.154:Escritorio/Software/
zsh: no matches found: hostA:Descargas/debian-6.0.4-*
das gleiche Kommando funktioniert auch in bash
Wenn ich scp über zsh versuche, bekomme ich
scp hostA:Descargas/debian-6.0.4-* user@192.168.1.154:Escritorio/Software/
zsh: no matches found: hostA:Descargas/debian-6.0.4-*
das gleiche Kommando funktioniert auch in bash
Antworten:
Entkomme deiner Wildcard:
scp hostA:Descargas/debian-6.0.4-\*
QUEUE=*
Option zu starten . Danke für die Lösung!
oder füge dies deinem hinzu .zshrc
alias scp='noglob scp'
Deaktivieren Sie die NOMATCH
Option, damit zsh den Text in Ruhe lässt, anstatt sich über einen Glob-Fehler zu beschweren.
.zshrc
?
Dieser Beitrag bietet eine gute Lösung dafür, indem das Plugin url-quote-magic verwendet wird, um Globs in scp-Befehlen automatisch zu umgehen. Um es zu aktivieren, fügen Sie Folgendes zu Ihrem hinzu ~/.zshrc
:
# Automatically quote globs in URL and remote references
__remote_commands=(scp rsync)
autoload -U url-quote-magic
zle -N self-insert url-quote-magic
zstyle -e :urlglobber url-other-schema '[[ $__remote_commands[(i)$words[1]] -le ${#__remote_commands} ]] && reply=("*") || reply=(http https ftp)'
Wenn Sie ein Glob-Zeichen (wie *
) als Teil eines Remote-Pfads in einem scp- oder rsync-Befehl eingeben, fügt zsh automatisch einen schwarzen Schrägstrich voran:
scp hostA:Descargas/debian-6.0.4-\* user@192.168.1.154:Escritorio/Software/