【问题标题】:How to create a batch file in Mac?如何在 Mac 中创建批处理文件?
【发布时间】:2014-12-01 20:09:20
【问题描述】:

我需要在工作中找到一种解决方案来每天备份特定文件夹,希望是 RAR 或 ZIP 文件。

如果是在 PC 上,我早就做了。但我不知道如何在 Mac 上使用它。

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

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

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

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

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

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

  4. 完成后关闭 Mac。

我想再说一遍,我通常不使用 Mac,所以诸如为脚本打开什么样的文件之类的事情对我来说并不是微不足道的。

我试图将 Mark 的 bash 行(来自下面的第一个答案)放入一个 txt 文件并执行它,但它有错误并且不起作用。

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

我怎样才能做到这一点?

我想要一个可行的例子:)

谢谢,

戴夫

【问题讨论】:

    标签: macos bash batch-file terminal applescript


    【解决方案1】:

    您可以创建一个执行备份的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,但方法相同。

    【讨论】:

    • 嗨,马克,我还没有机会尝试,请放心,一旦我愿意,我会更新/标记为答案
    • 我不确定我知道该怎么做。我想只是用文本编辑器创建一个新的文本文件,还是什么?它不会很好:)
    • 不能保存为 RTF,需要纯文本格式。
    • +1 一旦您弄清楚如何保存为正确的文本文件,这应该可以工作。
    • 是的,我做到了,并且 bash 确实运行了,但没有输出文件,终端窗口上只有大量的乱码:(
    猜你喜欢
    • 1970-01-01
    • 2013-09-25
    • 1970-01-01
    • 1970-01-01
    • 2013-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多