-
-
Save menushka/cb3ed28b73fc030b5b21e0316d059928 to your computer and use it in GitHub Desktop.
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 |
The script works really well, I managed to specify the folder. However, it overwrites files with the same name, which can be a problem. iPhone camera roll photos always name in the same way, which means that transferring photos over via AirDrop can overwrite them. Is it possible to check for duplicate filenames, and add a timestamp to them to differentiate?
Just forked and modified the code to rename the AirDrop files with a number suffix, if there's any file with the same name in target folder.
i have mojave 10.14.6 for me line
moveFile(current_item, alias NEW_AIRDROP_FOLDER)
doesn't work. no errors, just quit script. i just removed word "alias" and now it works:
moveFile(current_item, NEW_AIRDROP_FOLDER)
i set AIRDROP_FOLDER in same format:
property AIRDROP_FOLDER : "Macintosh HD:Users:MyUserName:Downloads:myAirDrop"
i have mojave 10.14.6 for me line
moveFile(current_item, alias NEW_AIRDROP_FOLDER)
doesn't work. no errors, just quit script. i just removed word "alias" and now it works:
moveFile(current_item, NEW_AIRDROP_FOLDER)
i set AIRDROP_FOLDER in same format:
property AIRDROP_FOLDER : "Macintosh HD:Users:MyUserName:Downloads:myAirDrop"
Why I keep recieve the warning "error -1,752 " which tells me cannot save to file "airdropSorter.scpt"?
looks like Mac OS security reason. just save your script somewhere else (like desktop), then copy it from there to Library-Scripts-Folder Actions Scripts, OS will ask about your permission and you have to input your password. that's it.
I hope it helps.
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.
hello, i am in catalina 10.15.3 and use this script.
it works but files will also save in default download foler. thats to say it will have two copies.
anyone know how to solve this problem?
thanks.
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.
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
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
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?
Thanks, your script run on: Apple M1 Pro ; 13.0.1 (22A400)
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?
This script works for me. I just needed to remove word "alias" as others mentioned.
Steps:
- open app "Script Editor", File > New, then paste contents and name as
airdropSorter
and save to~/Desktop
(default location) - Modify script value
AIRDROP_FOLDER
to point to new location for airdropped files. Example:Macintosh HD:Users:ritvik:Git-Projects:Personal:blah
- Remove
alias
so we end up withmoveFile(current_item, AIRDROP_FOLDER)
- Run the following in a Terminal (enter password if prompted):
sudo mkdir -p "/Library/Scripts/Folder Action Scripts/" && sudo cp ~/Desktop/airdropSorter.scpt "/Library/Scripts/Folder Action Scripts/"
- Right click on
Downloads
in Finder, Show In Enclosing Folder then right-click onDownloads
and Services > Folder Action Setup and make sure you got "Downloads" on left and "airdropSorter" script on right, and everything is checked.
Tested on:
Apple M2 2023; Sonoma 14.2.1 (23C71)
Works great. I dropped the 'alias' as mentioned. @barfburglar: The normal Automator action that watches folders does not work for me for AirDropped files.
Took me a bit to understand the AIRDROP_FOLDER is the folder you're moving files to?
I'm not an AppleScripter. Is there a way to restrict to only .gpx files
Sequoia 15.1, M2 Pro Mini
This could be exactly what I'm looking for! Could you please tell me how to specify in the script which folder the Airdrop files should be moved to? How does it handle cases in which there is already a file in /Downloads with the same name as the file being Airdropped over?
Thanks so much!