“上下文菜单”上传到映射文件夹

“上下文菜单”上传到映射文件夹

我正在寻找一个可以从 Windows 资源管理器上传的 ftp 软件。

“Cute ftp” 有一个这样的选项。您可以直接从“上下文菜单”上传,但它似乎只能上传到根文件夹。我需要软件使用某种映射上传到正确的文件夹。

答案1

使用 Windows 内置 FTP 客户端将文件上传到 FTP 服务器

您只能使用 Windows 板载实用程序通过 FTP 上传文件。只需使用以下代码创建一个 CMD 脚本,并在 sendto 文件夹中放置一个快捷方式 ( Win+ R→ shell:sendto),即可快速访问上下文菜单

“映射文件夹”功能请求也将起作用。Filezilla 用户知道此功能同步浏览

在此处输入图片描述

@echo off  
set inputfolder="%~dp1"  
set mappedfolder=%inputfolder:C:\MAPPEDFOLDER1\MAPPEDFOLDER2\=%  
set mappedfolder=%mappedfolder:"=%  
set ftp=%temp%\script.ftp  
>> %ftp% ECHO open 123.4.567.89  
>> %ftp% ECHO user FTPUSER FTPPASSWORD  
>> %ftp% ECHO cd "%mappedfolder%"  
>> %ftp% ECHO binary  
>> %ftp% ECHO send %1  
>> %ftp% ECHO disconnect  
>> %ftp% ECHO quit  
ftp.exe -n -i -s:%ftp%  
del %ftp%  
pause  
exit  

输入您的 FTP 凭证

  • FTPUSER将和FTPPASSWORDIP 地址替换为您自己的 FTP 登录数据
  • 更改C:\MAPPEDFOLDER1\MAPPEDFOLDER2\为本地电脑上的映射文件夹

笔记:如果您从映射文件夹之外上传文件,则该文件将默认保存到您的 FTP 根文件夹中。

脚本如何工作(示例文件C:\some\folder\input.txt

  1. 仅您选择的文件的路径被保存为输入文件夹:C:\some\folder\
  2. 第三行将输入路径与硬编码映射路径(例如C:\some\)进行比较。结果您将获得folder\映射文件夹。稍后,脚本将尝试在您的 FTP 根目录中打开此文件夹
  3. 第 5-12 行通过多个 echo 命令创建一个临时文本文件 (script.ftp)。所有 FTP 命令都写入此文本文件中。
  4. 调用 Windows 内置 FTP 客户端ftp.exe -n -i -s:%ftp%并获取 FTP 命令文件作为参数。因此它知道该做什么:
    • 首先,FTP 程序会打开与你的服务器的连接,并获取你的登录凭据
    • cd "%mappedfolder%"用于同步您的输入路径和 FTP 路径结构。幸运的是,它可以通过一次调用打开多个文件夹。
    • binary只是文件传输方法的默认设置
    • send %1最终发送了我们的文件。批次参数 %1代表输入的完整文件名
    • 传输完成后,我们断开与 FTP 服务器的连接并关闭 FTP 客户端
  5. 最后三行只是为了清理我们的痕迹,比如删除 FTP 命令文件,pause如果一切顺利,您将有机会看到脚本输出。

使用的资源

相关内容