Zshに切り替えましたが、正常に動作しています。奇妙なことに、*ワイルドカードを使用してscpを実行しようとすると、機能せず、bashにドロップする必要があります。以下の2番目のコマンドは正常に動作します。
なぜこれが起こるのか、それをどのように修正するのかについてのアイデアはありますか?
~/dmp ⌚ 16:06:10
$ scp abc@123:/home/se/exports/201405091107/* .
zsh: no matches found: root@uf3:/home/se/exports/201405091107/*
~/dmp ⌚ 16:06:53
$ bash
sean@seanlaptop:~/dmp$ scp abc@123:/home/se/exports/201405091107/* .
BashとZshは、失敗したグロビングに関して、デフォルトの動作が異なります。
Bashでは、グロブが何にも一致しない場合、使用した未変更のグロブが返されます。 zshでは、これは代わりにエラーをスローします。
したがって、それを引用する必要があります。
scp 'abc@123:/home/se/exports/201405091107/*' .
Bashと同じ動作をしたい場合は、次のようにすることができます
setopt nonomatch
https://superuser.com/a/740728/97807 でこの回答を確認してください
Zpreztoユーザーの場合、コマンドの前にバックスラッシュを付けると機能します。
交換、
$ scp <command>
と
$ \scp <command>