识别文件不可访问 ssh

identify file not accessible ssh

我的OS是虚拟机中的Ubuntu16。 我正在尝试编写一个脚本来使用 scp 传输多个文件(文件名:t01、t02、t03)。 这是我的代码:

vim scriptname

#!/bin/bash
for a in {01..03}
do scp -i ~/home/username/.ssh/id_rsa -r t$a 
username@xx.xx.xx.xxx:/home/username/Desktop
done

当我在终端中输入这个时

./scriptname

我知道了

Warning: Identity file /home/ian/home/ian/.ssh/id_rsa not accessible: No 
such file or directory.
t01: No such file or directory
Warning: Identity file /home/ian/home/ian/.ssh/id_rsa not accessible: No 
such file or directory.
t02: No such file or directory
Warning: Identity file /home/ian/home/ian/.ssh/id_rsa not accessible: No 
such file or directory.
t03: No such file or directory

有一件事让我无法理解,我居然在脚本中写了“/home/ian/.ssh/id_rsa”。但错误信息显示“/home/ian/home/ian/.ssh/id_rsa”。我尝试以不同的方式键入我的 ssh_key 目录,例如“/.ssh/id_rsa”,但仍然无法工作。 我做错了什么? 谢谢!

t01: No such file or directory 告诉你它不能访问文件

因为您 运行 的词典 bash 脚本与文件所在的位置不同。

如果你想把不同的文件放在同一个字典中,你必须给出所有文件的完整路径。