【问题标题】:Unix copying script automatically copy files with same nameUnix复制脚本自动复制同名文件
【发布时间】:2011-09-14 22:44:59
【问题描述】:

我有一个简单的 Unix 脚本,它从多个目录复制文件并将它们全部转储到一个目录中。因为我要复制数千个文件,所以我遇到了一些文件同名的情况。

当这种情况发生而不是复制文件时,Unix 会给我一个错误。我认为这是因为它无法覆盖现有文件。

cp: cannot create [pathname]: Permission denied

我想要做的是让 Unix 自动创建第二个文件,可能通过像 windows 一样在文件名上附加 (2),而不覆盖已经存在的文件。我浏览了 CP 选项列表,试图找到一个可以满足我需要的选项,但什么都没有。有什么想法吗?

希望我遗漏了一些明显的东西,因为我以前从未编写过 Unix 脚本。

谢谢。

编辑:

老实说,我不确定我正在使用哪个版本。如果你能告诉我如何检查,我会的。

代码摘录:

cp /vob/application/spottool/custom/*.kl ~/Sourcefiles

【问题讨论】:

    标签: unix


    【解决方案1】:

    您正在开发哪种风格的 Unix?在 Linux 上使用的 GNU cp 具有

    cp --backup=numbered src1/* src2/* dest/
    

    【讨论】:

    • 我在尝试–backup=numbered时收到了一个非法选项
    • 你在使用 GNU cp 吗? (试试cp --version。)如果是,请确保使用两个破折号,您在评论中只输入了一个。
    • cp --version 给了我另一个非法选项
    • 也就是说,你没有使用 GNU cp。您可能能够为您的系统编译 GNU coreutils(包含 cp 的软件包),或者您的本地 cp 或 mv 可能有类似的选项,尽管我怀疑后者。
    猜你喜欢
    • 2012-09-13
    • 2023-03-29
    • 2013-04-24
    • 1970-01-01
    • 2013-01-30
    • 1970-01-01
    • 2019-12-15
    • 2011-12-30
    • 1970-01-01
    相关资源
    最近更新 更多