11

指定したファイルをあるフォルダーから新しく作成したフォルダーにコピーする AppleSript を作成する必要があります。

これらのファイルは、AppleScript エディターで次のように指定する必要があります。

start

fileToBeMoved = "Desktop/Test Folder 1/test.doc"
newfoldername = "Test Folder 2"

make newfolder and name it 'newfoldername'
copy 'fileToBeMoved' to 'newfolder'

end
4

8 に答える 8

13

一般的:

tell application "Finder"
  make new folder at alias "Macintosh HD:Users:user:Desktop:" with properties {name:"Test Folder 2"}
  copy file "Macintosh HD:Users:user:Desktop:Test Folder 1:test.doc" to folder "Macintosh HD:Users:user:Desktop:Test Folder 2"
end tell

POSIX ファイルとパスを表す変数名を追加できます。

明らかに、コロン文字 (:) は、フォルダーとファイル名の予約文字です。

set desktopFolder to "Macintosh HD/Users/user/Desktop/"
set desktopFdrPosix to quoted form of POSIX path of desktopFolder
set newFolderName to "Test Folder 2"
set destinationFdrPosix to quoted form of desktopFdrPosix & POSIX file newFolderName
set sourceFilename to "Test Folder 1/test.doc"
set sourceFnPosix to quoted form of desktopFdrPosix & POSIX file sourceFilename

tell application "Finder"
  make new folder at alias desktopFdrPosix with properties {name:newFolderName}
  copy file sourceFnPosix to folder destinationFdrPosix
end tell    

宛先フォルダーが既に存在する場合は、エラー チェックを追加することもできます。

于 2009-05-26T06:57:20.753 に答える
5

AppleScript のトリックは、ファイルの移動がエイリアスを使用して行われることです。

do shell scriptより現実的には、Automator などを使用している場合は、代わりに AppleScript から実行できるシェル スクリプトを作成する方が簡単かもしれません。

#!/bin/sh

fileToBeMoved="$HOME/Desktop/Test Folder 1/test.doc"
newFolderName="Test Folder 2"
mkdir "$newFolderName"
cp -a "$fileToBeMoved" "$newFolderName"
于 2009-05-26T06:44:18.300 に答える
1

これは、マウントされたネットワーク ボリュームにコピーする場合に機能します。

    mount volume "afp://compname.local/mountpoint"
    tell application "Finder"
      duplicate file "MyTextFile.txt" of folder "Documents" of home to disk "mountpoint"
      eject "mountpoint"
    end tell
于 2011-05-19T17:20:32.197 に答える
0
tell application "Finder"
    make new folder at desktop with properties {name:"folder"}
    duplicate POSIX file "/usr/share/doc/bash/bash.html" to result
end tell

POSIX file ((system attribute "HOME") & "/Documents" as text)
tell application "Finder" to result

tell application "Finder" to duplicate (get selection) to desktop replacing yes

-- these are documented in the dictionary of System Events
path to home folder
POSIX path of (path to documents folder)
path to library folder from user domain
path to desktop folder as text

-- getting files as alias list is faster
tell application "Finder"
    files of entire contents of (path to preferences folder) as alias list
end tell
于 2013-03-23T12:43:10.533 に答える
0

Chealions シェル スクリプト ソリューションを使用しました。スクリプト ファイルを実行可能にすることを忘れないでください。 sudo chmod u+x scriptFilename

=また、変数割り当ての符号間のスペースを削除します。スペースでは機能しません。たとえば、次のようになります。newFolderName="Test Folder 2"

于 2014-01-15T01:23:14.010 に答える
0

探しているのが同期の場合は、AppleScript で次のシェル スクリプトを実行できます。

rsync -a /Users/username/folderToBeCopiedFrom /Volumes/folderToBeCopiedTo/

于 2013-03-22T17:04:47.900 に答える