bash에서 작동하는 scp 명령이 zsh에서 작동하지 않습니다


14

이 명령은 bash에서 잘 작동합니다.

bash-3.2$ scp luna4:/u/paige/maye/src/diviner/notebooks/plots/hk_* .
hk_az.png                                                   100%  126KB 126.0KB/s   00:00
hk_baffle.png                                               100%  166KB 166.3KB/s   00:01
hk_bb.png                                                   100%  144KB 143.8KB/s   00:00
hk_el.png                                                   100%  115KB 115.3KB/s   00:00
hk_fpa.png                                                  100%  123KB 123.2KB/s   00:00
hk_fpb.png                                                  100%  126KB 125.7KB/s   00:00
hk_hybrid.png                                               100%   99KB  98.7KB/s   00:00
hk_oba.png                                                  100%  140KB 139.7KB/s   00:00
hk_solar.png                                                100%  206KB 205.6KB/s   00:00
hk_temp.png                                                 100%   62KB  61.8KB/s   00:00
hk_yoke.png                                                 100%  122KB 121.7KB/s   00:00
bash-3.2$ exit

그러나 zsh에서는 실패하고 파일을 찾을 수 없습니다.

$ scp luna4:/u/paige/maye/src/diviner/notebooks/plots/hk_* .
zsh: no matches found: luna4:/u/paige/maye/src/diviner/notebooks/plots/hk_*

무슨 일이야?


나는 이것이 여기에 게시해도 괜찮은지 스스로 궁금해했지만 zsh와 scp를 검색하고 많은 항목을 찾았습니다.
K.-Michael Aye

답변:


16

문제는 원격 경로를 잡고 있다는 것 zsh입니다 . 이를 통해이를 확인할 수 있습니다

scp luna4:"/u/paige/maye/src/diviner/notebooks/plots/hk_*" .

SCP 원격 경로 오프 globbing을 설정하지만, 그 (에서 같은 글 로빙 상태로 두려면 여기에 ) 당신이 추가 .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}"
}

1
건배. 확인했습니다. 스위치를 끌 수 있습니까?
K.-Michael Aye

1
@ K.-MichaelAye 수정 된 답변이지만 그렇습니다.
Elliott Frisch

그리고 그 해킹도 작동합니다. 감사합니다! (내 .zshrc에 추가)
K.-Michael Aye

3

작은 따옴표를 사용하면 작동합니다.

scp 'remote.host.com:files*' .

Cygwin을 사용하는 간단한 수정 사항이므로 +1하겠습니다. 감사!
Carlos

간단하고 쉬운 수정. 감사! 추가 후크가 필요 없습니다.
kate
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.