Filezilla autoupload热键(AutoHotkey)

时间:2012-06-03 00:17:42

标签: notepad++ autohotkey filezilla

这是我的第一篇文章,所以请保持温柔 我发现我经常不断保存文件,然后将它们上传到网络服务器进行测试。这变得相当烦人所以我试图创建一个autohotkey脚本,当我在notepad ++中保存文件时,它会使用filezilla自动将文件上传到服务器。

目前我有这个:

loop {
  IfWinExist, File has changed
  {
    WinActivate
    Send, !y
  }
  Sleep, 1000
}

这在一定程度上有效。它将保存的文件上传到服务器,但它不考虑目录,所以我最终将一大堆js和css文件上传到主站点目录而不是它们各自的目录,这显然是一个问题。

我是AutoHotkey的新手,并不知道我在做什么,所以我不知道如何解决这个问题。

我的想法(不确定是否可能)
我的所有网站在我的计算机上都有类似的文件结构:

*sitename* / root / css / *css files*
                     js / *js files*
                    img / *image files*

然后还有根文件夹中的站点目录和页面。这意味着我可以在FileZilla中打开站点根文件夹,并将所有文件复制到服务器上的public_html文件夹中。

我想知道是否可以获取已保存文件的文件路径,例如:'d://files/Website_name/root/css/styles.css'
并删除root之前的内容以留下'css / styles.css'。然后导航到Web服务器上的css目录,然后传输该文件。这需要使用多个目录,例如'about / info / index.php',需要更改为'about'目录,然后是'info'目录,然后上传文件。

如果目录不存在,我希望进程停止运行并返回到起始目录。它也应该在上传文件后执行此操作,以便可以进行另一次上传。

我真的不明白为什么这不是FileZilla功能的一部分,因为许多其他FTP程序会自动上传文件。如果有人可以帮我修改我的脚本或向我展示使用FileZilla自动上传文件的另一种(免费)方式,我们将不胜感激。

2 个答案:

答案 0 :(得分:3)

不是您要求的,但是一旦您使用Notepad ++进行编辑,为什么不使用其FTP插件?它随N ++本身一起提供,易于配置。如果您想要一种具有更多可能性的方法,那么您应该尝试WinSCP并将Notepad ++设置为其默认编辑器。一旦保存在N ++中,这两种方法都会自动上传您的更改。

答案 1 :(得分:0)

我重新制作了AutoHotKey 脚本,所以如果有人对此感兴趣:

loop {
  IfWinExist, Datei wurde geändert ;original -> File has changed
  {
    WinGetTitle, windowBefore, A
    WinActivate
    ;Send, !y (wont work at me)
    Send, {Enter}
    WinActivate, %vorherigesFenster%
  }
  Sleep, 1000
}