यहाँ Applescript के साथ इस समस्या को हल करने में मेरा छुरा है। निम्नलिखित एप्सस्क्रिप्ट खोजक में चयनित उपनामों को ले जाएगा और उन्हें नए पथ के स्थान पर पुन: प्रयास और स्थानांतरित करेगा Backup
साथ में External
POSIX पथ में।
उम्मीद है कि यह सीधा है। आप शायद चयनित फ़ोल्डरों में उपनामों की खोज करने के लिए इसे पुनरावर्ती बना सकते हैं, लेकिन यह मेरे काम करने की तुलना में अधिक काम है - और फिर फ़ोल्डरों को उपनामों से निपटने की समस्या है। चीजें गड़बड़ हो सकती हैं। ;-)
आशा करता हूँ की ये काम करेगा।
tell application "Finder"
set these_items to the selection
end tell
repeat with i from 1 to the count of these_items
set this_item to (item i of these_items) as alias
set this_info to info for this_item
if class of this_item is alias then
tell application "Finder"
set original_file to original item of this_item
set this_alias_file_name to displayed name of this_item
set container_folder to container of this_item
set the_path to the POSIX path of (original_file as alias)
set new_path to my replaceText("/Backup/", "/External/", the_path)
move this_item to trash
try
make new alias file at container_folder to (POSIX file new_path) with properties {name:this_alias_file_name}
on error errMsg number errorNumber
if errorNumber is -10000 then -- new original file not found, try relinking to old
try
make new alias file at container_folder to (POSIX file the_path) with properties {name:this_alias_file_name}
on error errMsg number errorNumber
if errorNumber is -10000 then -- old original not found. link's dead Jim
display dialog "The original file for alias " & this_alias_file_name & " was not found."
else
display dialog "An unknown error occurred: " & errorNumber as text
end if
end try
else
display dialog "An unknown error occurred: " & errorNumber as text
end if
end try
end tell
end if
end repeat
on replaceText(find, replace, subject)
set prevTIDs to text item delimiters of AppleScript
set text item delimiters of AppleScript to find
set subject to text items of subject
set text item delimiters of AppleScript to replace
set subject to "" & subject
set text item delimiters of AppleScript to prevTIDs
return subject
end replaceText