用于更改前缀并在文件复制到文件夹时自动上传到 ftp 的 AppleScript [英] AppleScript for changing prefix and automatically upload to ftp when file is copied to folder

查看:20
本文介绍了用于更改前缀并在文件复制到文件夹时自动上传到 ftp 的 AppleScript的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在编写一个 AppleScript,它允许我自动为文件添加前缀,并在将文件复制到特定文件夹时将其上传到 ftp 服务器(用作操作系统下的文件夹操作X El Capitan).

I am programing an AppleScript that allows me to automatically put a prefix to a file and upload it to an ftp-server when it is copied to a specific folder (used as a folder action under OS X El Capitan).

我要做的是自动上传文件,但是当我尝试实现它应该添加前缀(特别是 unix 时间戳)时,它既不会更改文件名,也不会将其上传到 ftp-目录.

What I get to work is that the file is automatically uploaded, but when I try to implement that it should add a prefix (specifically a unix timestamp), it won't change either the filename nor uploading it to the ftp-directory.

这是我现在的代码:

property uploadftp : "ftp://user:password«ftpxyz.de/directory/" --this will be changed to the real one
set nowSeconds to ((current date) - (date ("1/1/1970")) - (time to GMT)) as miles as string
set timestamp to nowSeconds & "_"
set Tag to timestamp
on adding folder items to this_folder after receiving added_items
    set thelist to ""
    repeat with i in added_items
        set thelist to thelist & return & i & ","
        try
            set theFiles to thelist
            repeat with aFile in theFiles
                set name of aFile to Tag & name of aFile
            end repeat
            do shell script "curl -T " & quoted form of POSIX path of i & space & quoted form of uploadftp
        on error e number n
            display dialog "Error: " & e & "Number: " & n
        end try
    end repeat
    display dialog "Dateien empfangen: " & (count added_items) & return & "Ordner: " & POSIX path of this_folder & return & "Dateien: " & thelist
end adding folder items to

推荐答案

我怀疑该脚本是否有效.

I doubt that the script works at all.

主要问题是事件处理程序之外的代码不会在运行时执行.

The main issue is that code outside the event handler won't be executed at runtime.

试试这个:

property uploadftp : "ftp://user:password«ftpxyz.de/directory/" --this will be changed to the real one

on adding folder items to this_folder after receiving added_items

    set timestamp to ((current date) - (date ("1/1/1970")) - (time to GMT)) as miles as string

    set thelist to {}
    repeat with aFile in added_items
        try
            set fileName to name of (info for aFile)
            set newFileName to timestamp & "_" & fileName
            set end of thelist to fileName
            do shell script "curl -T " & quoted form of POSIX path of aFile & space & quoted form of (uploadftp & newFileName)
        on error e number n
            display dialog "Error: " & e & "Number: " & n
        end try
    end repeat
    set saveTID to AppleScript's text item delimiters
    set AppleScript's text item delimiters to ","
    set receivedFiles to thelist as text
    set AppleScript's text item delimiters to saveTID
    display dialog "Dateien empfangen: " & (count added_items) & return & "Ordner: " & POSIX path of this_folder & return & "Dateien: " & receivedFiles
end adding folder items to

这篇关于用于更改前缀并在文件复制到文件夹时自动上传到 ftp 的 AppleScript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆