如何自动FTP我正在编辑的文件

问题描述 投票:0回答:8

我正在尝试弄清楚如何使用 Filezilla 进行 autoftp。 还有其他程序可以立即执行此操作吗?

windows ftp filezilla
8个回答
43
投票

我使用 WinSCP 是因为它有一些惊人的好处。我使用 WinSCP 连接到我的 FTP 服务器并让它监视我的本地文件夹

/website/public_html

我在本地文件夹中所做的任何更改都会通过 WinSCP 自动上传到我的 FTP 服务器。该功能称为 使远程目录保持最新
http://winscp.net/eng/docs/task_keep_up_to_date

至于SCSS,我也用它:
我有一个脚本,可以打开控制台窗口来观看我的

/website/scss
文件并将它们编译为
/website/public_html/styles/
。 WinSCP 看到 CSS 文件已更改(或新文件)并自动上传。

注意:唯一的缺点是您无法访问您的

error_log
,因为它是由 PHP 在服务器上自动生成的。为此,您可以轻松实例化另一个 WinSCP 以连接到您的网站。现在您有 1 个 WinSCP 监视您的本地文件夹和 1 个 WinSCP,您可以在其中访问站点地图。


10
投票

如果“autoftp”的意思是“每当我保存文件时更新服务器上的文件”并且您正在使用代码,那么我会推荐精彩的Notepad++


7
投票

Notepad++ 对于这个特定的功能来说当然是很棒的,它甚至可以保存从远程服务器访问和修改的任何内容的缓存。

然而(对我来说)的缺点是 Notepad++ 不会自动上传预处理过的 CSS 文件,如 .scss 或 .less。 我尝试在 Notepad++ 中实际打开生成的 .css 文件来模拟编辑它们的行为,但这仍然在该过程中增加了额外的步骤。我必须单击选项卡并手动保存它们(在“您的文件已更改提示”之后)。

目前,在我进行更改后,我点击 FZ 并手动上传文件。


7
投票

这个回复有点晚了,但希望它对那些希望在每次保存本地编辑的文件时绕过 Filezilla 的“您要覆盖吗”提示的人有所帮助。不幸的是,Filezilla 开发人员坚决反对将此行为设为可选。这对许多人来说都是一个问题,尤其是在桌面空间有限的情况下,因为每次出现提示时,都必须暴露隐藏的 filezilla 窗口才能单击“确定”。

无论如何,答案是WinSCP。它也是免费的,并且与 filezilla 非常相似,我无需学习即可立即使用它。

干杯!


5
投票

使用 NetBeans IDE 有一种更简单的方法,可以选择在保存时、手动或运行时使用 FTPSFTP 上传文件。


    右键单击您的项目,然后单击
  1. 属性
  2. 点击第二类
  3. 运行配置
  4. 运行方式:选择
  5. 远程网站(FTP、SFTP)
  6. 项目网址:放置您的网站
  7. 实时链接例如www.example.com
  8. 上传文件:选择
  9. 保存时
  10. 远程连接 > 管理 > 添加 > 连接名称(放一个) > FTP

现在添加您的 ftp 详细信息。

确保您的初始目录路径正确(您的网站路径),这样您就不会意外替换文件管理器中其他网站的任何文件


1
投票
不幸的是,filezilla 上没有选项可以在文件更改时自动同意上传。

Mobaxtern 可以做到这一点。文件更改时您可以选择“始终上传”。

您可以使用任何编辑器编辑文件,每当您保存时,它就会上传。


0
投票
官方答案是 ==> 永远不会自动上传更改的文件,因为 FileZilla 无法检测外部编辑器何时真正完成保存文件。

是的,是的,伟大的开发者的生产力很低。

如何使用:

1.下载并安装autoit

2.启动脚本

3.脚本将等待窗口“文件已更改”,然后每次单击“是”。

这是解决方案:

HotKeySet("{ESC}", "_Terminate") ;~ dimm exit by esc Func _Terminate() Exit EndFunc ;==>_Terminate ;~ func to mange the windows Func _WinWaitActivate($title,$text,$timeout=0) WinWait($title,$text,$timeout) If Not WinActive($title,$text) Then WinActivate($title,$text) WinWaitActive($title,$text,$timeout) EndFunc MsgBox("","Info","When file edition i will always click yes for upload",5) Run('C:\Program Files\FileZilla FTP Client\filezilla.exe') $mywindow = "File has changed" While 1 ; start loop here ToolTip("Waiting...") ;~ _WinWaitActivate("File has changed","") _WinWaitActivate($mywindow,"") ;~ [CLASS:Button; INSTANCE:2] ControlClick($mywindow,"", "[CLASS:Button; INSTANCE:2]") ;~ dimm or simply send yes key Send("{y}") ToolTip("Loop") Sleep(5000) Wend ; stop loop here
    

© www.soinside.com 2019 - 2024. All rights reserved.