Ошибка «scp with zsh : no matches found» в Unix/Linux
Совсем недавно, я начал использовать оболочку zsh за место bash. Но столкнулся с небольшой проблемой при копировании файлов по SCP/Rsync. По этому, решил записать заметку «Ошибка «scp with zsh : no matches found» в Unix/Linux» и рассказать как с ней бороться.
Существует несколько способов исправить данную ошибку:
- Самый простой способ — это использовать алиас на команду scp с параметром noglob. Для этого нужно открыть файл:
# vim ~/.zshrc
И вставляем алиас:
[...] alias scp='noglob scp' [...]
- Можно добавить функцию, и добавить его в файл:
# vim ~/.zshrc
Добавляем:
# Disable globbing on the remote path. alias scp='noglob scp_wrap' function scp_wrap { local -a args local i for i in "$@"; do case $i in (*:*) args+=($i) ;; (*) args+=(${~i}) ;; esac; done command scp "${(@)args}" }
После чего, можно использовать scp и все будет работать. А на этом, я завершаю свою тему «Ошибка «scp with zsh : no matches found» в Unix/Linux’.