Skip to content

Instantly share code, notes, and snippets.

@menushka
Created December 30, 2018 22:47
Embed
What would you like to do?
A Folder Action script written in AppleScript used to separate AirDropped files into a different folder other than the default Downloads folder
property AIRDROP_FOLDER : "Path:to:AirDrop:Folder:in:Alias:format"
property QUARANTINE_KEY : "59"
property GET_QUARANTINE_COMMAND_START : "ls -l -@ '"
property GET_QUARANTINE_COMMAND_END : "' | tr '\\n' ' ' | sed 's/.*com\\.apple\\.quarantine\\s*\\(\\d*\\)/ \\1/' | awk '{$1=$1};1'"
on adding folder items to this_folder after receiving added_items
repeat with i from 1 to length of added_items
set current_item to item i of added_items
set quarantine_type to getQuarantineType(POSIX path of current_item)
if quarantine_type is equal to QUARANTINE_KEY then
moveFile(current_item, alias AIRDROP_FOLDER)
end if
end repeat
end adding folder items to
on moveFile(move_file, destination_dir)
tell application "Finder"
move move_file to destination_dir with replacing
end tell
end moveFile
on getQuarantineType(file_path)
return do shell script GET_QUARANTINE_COMMAND_START & file_path & GET_QUARANTINE_COMMAND_END
end getQuarantineType
@UltraREX
Copy link

I just set it up and it works. However, if I try to move an airdroped file back to my download folder, it gets automatically moved back to my airdrop folder. Can someone show me how to modify the script so that this does not happen? One idea is to add some metadata to the file after it has already been added to my airdrop folder once, and then files with that metadata can be excluded from the script thereafter.

It works.

@UltraREX
Copy link

How to use it.

step 1:
cd ~/Library/Scripts
mkdir Folder\ Action\ Scripts # if 'Folder Action Scripts' folder does not exist

step 2:
create a file, name it xxxxx.scpt
then copy all scipt into xxxxx.scpt

step 3:
right click Downloads folder, select Services -> Folder Action Steup
Enable Folder Action
Add Downloads on the left panel
Add xxxxx.scpt on the right panel

@FuckBound
Copy link

Thanks! This is exactly what I need! :)
However there's a BUG when transferring a bigger file more than 1 GB, it cannot be moved to the folder I need.

It runs well for the smaller files less than 200MB.

I will attach my screenshot.

PS: My system is 10.15.5
Snipaste_2020-06-10_23-50-16

@misoastar
Copy link

you have a bug with big file because it takes a lot time to move it, so you need to add delay to this script

@teeeb
Copy link

teeeb commented Nov 30, 2020

Hey Guys,
anyone have an idea how to that code to be able to choose a folder every time I receive a file from airdrop? I would like to be able to do Save As, and choose the folder. In fact, I would like to avoid having to send pictures and videos to my Mac to then transfert it to a Backup drive, that way I would be able to send by airdrop directly to a drive connected to my Mac. Can you help?

@luckykamon
Copy link

Thanks, your script run on: Apple M1 Pro ; 13.0.1 (22A400)

@UnusualAppleScript
Copy link

you have a bug with big file because it takes a lot time to move it, so you need to add delay to this script

I'm new here and I face the exact same issue as @FuckBound. Saw you mention on adding delay to this script. Can I ask how to go about? How will the additional code look like?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment