在 sftp 中使用“put”命令会出现“没有这样的文件或目录”的情况

在 sftp 中使用“put”命令会出现“没有这样的文件或目录”的情况

我已经回顾过这个主题: 如何修复使用 sftp 命令时出现“无此文件或目录”错误消息以及其他一些,但是没有什么能帮助我解决这个问题。

blankfile.txt简单地说,我正在尝试将位于本地计算机桌面目录中的名为的文件移动到 LAMP 服务器中的远程目录中。

我试过了:

put Desktop/blankfile.txt  
put blankfile.txt 192.168.x.x:/home/user/Desktop/
put /home/user/Desktop/blankfile.txt

(从远程工作目录输入时)

我究竟做错了什么?

答案1

我的猜测是你不在正确的本地路径中,要找出你本地机器上的当前目录,请使用:lpwd

如果您走错了路径,则使用lcd移动到正确路径,例如:

lcd ~/Desktop

知道确保所有文件都已到位,使用:lls获取本地文件列表。或者甚至像这样:

lls blankfile.txt

为了确保它在那里,然后您可以使用put它开始将其上传到远程机器:

put blankfile.txt

如果您遇到任何权限错误,请使用pwd命令找出您在远程机器上的位置。

/var如果您以普通用户身份处于类似的路径sftp,那么显然您无法在那里上传文件,在这种情况下,您将收到类似以下错误:

remote open("/root/blankfile.txt"): Permission denied

使用cd命令改变到您被允许写入的目录,然后使用put命令。

可能发生的另一个权限问题是您的本地文件权限,这将产生:

Couldn't open local file "blankfile.txt" for reading: Permission denied

使用 检查您的本地文件权限lls -l blankfile.txt,确保您本地机器上的当前用户有权读取该文件。

相关内容