私のFedora 20システムでは、定期的にscpを使用していますが、この現象が発生したのは今回が2番目です。このコマンドを実行するとき:
scp -r -P PORT user@host:/home/user/something/{file1,folder1,folder2,folder3,folder4} folder/folder2/
送信するすべてのファイル/ディレクトリのパスワードを要求します。
user@host's password: "password here"
質問:
ここで何が起こっているのでしょうか?
これは普通ですか?この行動を非常に奇妙な行動と見なすことはできますか?
ベストアンサー1
ローカルシェル(おそらくbash)が拡張中です。
user@host:/home/user/something/{file1,folder1,folder2,folder3,folder4}
入力する:
user@host:/home/user/something/file1 user@host:/home/user/something/folder1 user@host:/home/user/something/folder2 user@host:/home/user/something/folder3 user@host:/home/user/something/folder4
代わりに、次のようにすることができます。
scp -r -P PORT user@host:"/home/user/something/file1 /home/user/something/folder1 /home/user/something/folder2 /home/user/something/folder3 /home/user/something/folder4" folder/folder2/
または、リモートユーザーのログインシェルがbashであることがわかっている場合は、中かっこ拡張を使用することもできます。
scp -r -P PORT user@host:"/home/user/something/{file1,folder1,folder2,folder3,folder4}" folder/folder2/
リモートシェルが文字列をローカルシェルの代わりに引数に分割するようにします。