You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Server下使用Cygwin的Tar命令执行备份操作失败求解决

故障原因
  • 核心问题为tar命令参数顺序不符合新版本校验规则:你所使用的命令中,--null参数放在了-T -之后,新虚拟机的Cygwin环境内置的GNU Tar版本更高,对参数位置的校验更严格。--null的作用是指定-T参数读取的文件列表使用NULL字符作为分隔符(对应find命令的-print0输出格式),必须放在-T参数之前才会生效,放在后面无对应作用对象,就会触发报错。
  • 旧虚拟机环境可正常运行是因为旧版Tar对参数顺序的容错性更高,不会校验这类位置问题,版本升级后校验规则生效导致报错。
解决方案

仅需要调整tar部分的参数顺序,将--null移到-T -之前即可,修改后的完整命令如下:

find . -regextype posix-egrep -ctime -1 -type f ! -regex ".+?[.](pst|tgz|zip|avi)" -print0 | tar -czvf /cygdrive/(share name)/(filename).tgz --null -T -
  • 替换命令中的(share name)和(filename)为实际的共享目录名称和备份文件名称即可正常执行
  • 原有文件过滤规则、压缩规则、输出日志规则无需修改,仅调整参数顺序即可解决问题

内容的提问来源于stack exchange,提问作者MVB

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 01:21:02