修复scp:。:不是常规文件

时间:2015-05-17 19:50:03

标签: shell amazon-web-services scp

我正在尝试编写一个shell函数来将文件scp到我的AWS主机

function ec2-scp() {
    scp -i /path/to/pem/file.pem $1 user@ec2.host.amazonaws.com:.
}

我用它作为

ec2-scp server.war

我收到了一个错误:

scp: .: not a regular file

但是当我用文件名替换$ 1并执行相同的操作时,它就可以了。 这是一个战争文件,我正在尝试SCP。我该如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

尝试省略这样的尾随点:

function ec2-scp() {
    scp -i /path/to/pem/file.pem $1 user@ec2.host.amazonaws.com:
}

答案 1 :(得分:0)

server.war是链接吗?因为符号链接不是常规文件。 请尝试阅读此内容https://unix.stackexchange.com/questions/52634/error-using-scp-not-a-regular-file

答案 2 :(得分:0)

根据user48435 answer - 只需添加-r 像: scp -i -r /path/to/pem/file.pem $1 user@ec2.host.amazonaws.com:.