Password

帶有所選文件和目錄以供下載的 SCP 命令詢問每個新文件或目錄的密碼

  • November 11, 2014

在我的 Fedora 20 系統上,我經常使用 scp,這是我第二次遇到這個問題,當我執行這個命令時:

scp -r -P PORT user@host:/home/user/something/{file1,folder1,folder2,folder3,folder4} folder/folder2/

它要求我輸入它傳輸的每個文件/目錄的密碼。

user@host's password: "password here"

問題:

這裡發生了什麼?

這是正常的嗎,我認為這是非常奇怪的行為?

您的本地 shell(可能是 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/

或者,如果您知道遠端使用者的登錄 shell 是 bash,您也可以使用大括號擴展:

scp -r -P PORT user@host:"/home/user/something/{file1,folder1,folder2,folder3,folder4}" folder/folder2/

讓遠端 shell 將字元串拆分為參數而不是本地 shell。

引用自:https://unix.stackexchange.com/questions/167112