我正在尝试创建shell用于将文件复制到远程备份的脚本。
到目前为止,这是我的脚本:
PASSWORD=MY-SECRET-PASS
URL=SLOS755513-3:SL1255513@objectstorage.net
DIR=/backup
scp /home/user/my_log.txt $URL:$DIR
Run Code Online (Sandbox Code Playgroud)
但我收到错误:
ssh: Could not resolve hostname SLOS755513-3: Name or service not known
lost connection
Run Code Online (Sandbox Code Playgroud)
我想这是因为用户名中的特殊字符,因为如果我只是简单地写,test它实际上会尝试以test用户身份连接。
但我试图逃避\-,\:一切都给了我同样的错误。我也不确定如何在脚本中使用密码。
尝试这样的事情:
RUSER='SLOS755513-3:SL1255513'
HOST=objectstorage.net
DIR=/backup
scp -o user=$RUSER /home/user/my_log.txt $HOST:$DIR
Run Code Online (Sandbox Code Playgroud)
这将使用户部分明确,因此scp不会尝试解释:为主机/路径分隔符。-o user=$USER将用户作为选项发送到底层ssh.
| 归档时间: |
|
| 查看次数: |
3573 次 |
| 最近记录: |