首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bash: cp和mv命令后损坏的文件

bash: cp和mv命令后损坏的文件
EN

Stack Overflow用户
提问于 2022-01-26 17:35:17
回答 2查看 224关注 0票数 0

我正在使用预定的bash脚本( bash脚本每分钟执行一次)在我的synology上查看一个文件夹,其中所有扫描的文档都被删除。我的想法是将它们移到两个地方,一个是无纸化文件夹,另一个是未排序文件夹,这样我就可以手动将它们移动到正确的文件夹中。

代码语言:javascript
复制
#!/bin/bash
dpath=/volume1/scanned/*
for FILE in $dpath
do
if [[ -f $FILE ]]
then
    cp $FILE /volume1/unsorted_documents/
    mv $FILE /volume1/docker/paperless/consume/
else
    echo “There are no files in the given path.”
fi
done

大多数情况下,这个脚本最终会被文档破坏。我的想法是,在执行move命令之前,它还没有完成复制。

在执行移动之前,是否有方法确保副本已完成?或者另一个更好的解决方案?

EN

回答 2

Stack Overflow用户

发布于 2022-01-26 18:07:04

我认为您的问题与dpath变量分配有关。尝试使用find获取文件列表

代码语言:javascript
复制
#!/bin/bash
dpath=$(find /volume1/scanned -maxdepth 1 -type f)
# dpath=/volume1/scanned/*
for FILE in $dpath; do
  cp "$FILE" /volume1/unsorted_documents/
  mv "$FILE" /volume1/docker/paperless/consume/
done
票数 0
EN

Stack Overflow用户

发布于 2022-01-26 21:29:25

谢谢你所有的回答!我考虑了每一个答案,并写了另一个脚本,它应该工作得更好。如果有任何意见或建议,请让我知道:https://gist.github.com/ErikvdVen/95009cc0fd9267deaeae6ddbeae31e54

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70867831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档