如何在Mac中创建批处理文件?

时间:2014-10-07 11:49:52

标签: macos bash batch-file terminal applescript

我需要找到一种解决方案,每天备份特定文件夹,希望能够备份到RAR或ZIP文件。

如果它在PC上,我本来就已经这样做了。但我不知道如何在Mac上接近它。

我基本上想要实现的是一个自动化任务,可以使用可执行文件运行,但是:

  1. 将特定目录(/Volumes/Audio/Shoko)压缩为rar或zip文件。

    (在zip文件中排除所有子目录中的所有* .wav文件和目录名称“视频”)。

  2. 将其移至网络共享(/Volumes/Post Shared/Backup From Sound)。

    (或直接压缩到此文件夹)。

  3. 使用动态日期和时间自动化Zip文件的文件名(因此没有重复的文件名)。

  4. 完成后关闭Mac。

  5. 我想再说一遍,我通常不会使用Mac,所以像脚本打开什么样的文件,这样的东西对我来说并不是一件轻而易举的事。

    我试图将Mark的bash行(来自下面的第一个答案)放在txt文件中并执行它,但是它有错误而且没有用。

    我也试过使用Automator,但它太简单了,没有高级选项。

    我该如何做到这一点?

    我想要一个有效的例子:)

    谢谢,

    戴夫

1 个答案:

答案 0 :(得分:7)

您只需创建一个执行备份的bash脚本,然后您可以双击它或按计划运行它。我不知道你选择的路径和/或工具,但有些事情是这样的:

#!/bin/bash
FILENAME=`date +"/Volumes/path/to/network/share/Backup/%Y-%m-%d.tgz"`
cd /directory/to/backup || exit 1
tar -cvz "$FILENAME" .

您可以将其作为backup保存在桌面上,然后进入终端并输入:

chmod +x ~/Desktop/backup

使其可执行。然后你可以双击它 - 显然是在更改路径后反映你要备份的内容以及在哪里。

此外,您可能更喜欢使用其他工具 - 例如rsync,但方法是相同的。