2016-08-19 134 views
0

我想打一個小腳本來壓縮文件夾中。事實上,我想要做的是當你在一個文件夾右鍵點擊並選擇「壓縮」時完成的操作:壓縮文件與文件夾具有相同的名稱,當你在它上面拼寫時,它會創建文件夾和文件。 這裏是我的代碼:壓縮文件夾命名爲文件夾

set the_src to "Mac Info:Users:Maison:Desktop:Dest_So36" 
set the_src to quoted form of POSIX path of the_src 

set the_dest to "Mac Info:Users:Maison:Desktop:Dest_So36.zip" 
set the_dest to quoted form of POSIX path of the_dest 

do shell script "cd " & the_src & ";zip -r " & the_dest & " *" 

如果我用拉鍊-r需要從原單文件夾中的所有子文件夾和文件,但打開包裝時,還給原來的文件夾(子文件夾和文件)的內容,但不主文件夾本身。 它我使用zip -jr,它將所有的子文件夾(它獲取文件,但不是文件夾)放鬆。

感謝

回答

0

你爲什麼要使用光盤(changedirectory)進入該文件夾? 當你在父文件夾中時,可以使用zip -r命令,它將起作用。

所以,我相信你的命令應該成爲:

do shell script "zip -r " & the_dest & ".zip" & the_dest 
+0

不要不幸的是工作。事實上,如果我用\t做shell腳本the_src & ";拉鍊-r「&the_dest和」 *」的劇本似乎墜入一樣,如果它被打包整個桌面的無限循環:/ – Peter

1

更改目錄的罰款。你不需要星號。

do shell script "cd '/Users/Maison/Desktop/'; zip -r 'zip-a-dee-doo-dah.zip' 'Dest_So36' " 
+0

當然!!!!!大! 非常感謝! – Peter