使用 Automator 服務以及紅色可用且存在於這個線程只是一個“GUI”,周圍同上。該解決方案效果很好,但是,我沒有得到我預期的行為。同上,無需修改,將資料夾複製到目標資料夾並建立該資料夾(如果不存在)。我透過該服務得到的行為是將內容複製到目的地。有人可以幫助我將 applescript 修改為將資料夾複製到目標而不是將內容複製到目標嗎?腳本如下:
on run {input, parameters}
set dest to choose folder with prompt "select destination:"
set dest_path to (POSIX path of dest) as text
set src_paths to ""
repeat with idx from 1 to count (input)
set src_paths to src_paths & (quoted form of (POSIX path of item idx of input as text)) & " "
end repeat
set cmd to "ditto " & src_paths & quoted form of dest_path
do shell script cmd
end run
答案1
嘗試使用cp -Rf
替代。同上似乎不支持你想做的事情。另外,請確保來源路徑不以“/”結尾。如果路徑以「/」結尾,cp 將像同上一樣複製目錄的內容。
答案2
我不知道如何使用 AppleScript 來完成這項工作,但假設您希望透過建立 bar 將目錄 foo 複製到 barditto
然後
ditto foo bar/foo
您也可以建立中間目錄。例如,您希望複製層次結構 bar/foo/baz 中的目錄 biz。目錄 bar 和 foo 已經創建了
ditto biz bar/foo/baz/biz