我一直在寻找这样的剧本,但我找不到它。我怀疑它与this
类似但不完全正确,我不确定如何修改它以适合我。
我有一组像这样的多个名字的文件......
档案名称Vyear#01(年).ext
FileName Vyear#01(年).ext
等等,惯例总是一样的。
文件名(有时是多个单词),然后是V代表版本,然后是括号中的年份,然后是数字,然后是括号中的另一年。它很复杂,但这都是有原因的。我正在寻找的是一种自动将所有这些文件移动到仅基于该名称的第一部分的子文件夹的方法。所以这样的文件......
The Mist V2000#01(2011).zip
会移动到名为this的文件夹。
Mist V2000
我经常不得不制作这样的文件,我很乐意将它们分类到子文件夹中。我的问题是,我不确定如何只选择名称的第一个(标题中有两个或三个单词的文件的帐户)和卷号仅用于创建子文件夹,然后匹配移动的文件名。
我希望我能正确解释这一点。如果有人可以提供帮助,我会很感激。
干杯。
答案 0 :(得分:0)
试试这个。基本上,如果我们知道文件名中“#”字符的位置,我们就可以计算文件夹名称。然后我们可以获得所有文本 - 2个字符。然后你只需要创建该文件夹并将文件移入其中。简单。祝你好运。
set sourceFolder to choose folder
tell application "Finder"
set theFiles to files of sourceFolder
repeat with aFile in theFiles
set fileName to name of aFile
if fileName contains "#" then
set poundOffset to offset of "#" in fileName
set folderName to text 1 thru (poundOffset - 2) of fileName
set newFolder to (sourceFolder as text) & folderName & ":"
if not (exists folder newFolder) then
make new folder at sourceFolder with properties {name:folderName}
end if
move aFile to folder newFolder
end if
end repeat
end tell