【发布时间】:2014-02-05 07:38:07
【问题描述】:
我正在尝试根据文件名将目录中的文件移动到另一个目录。文件名将是COMPANY-ReportType_timestamp。
我目前正在使用它来制作目录:
for i in *
do mkdir /mnt/folder/"${i%-*}"
mkdir /mnt/folder/"${i%-*}"/"${i%_*}"
done
并使用它来移动文件:
for i in *
do mv $i /mnt/folder/"${i%-*}"/"${i%_*}"
done
在此脚本中,它将创建“COMPANY”文件夹,然后在其中创建“COMPANY-ReportType”文件夹。如果我可以从子文件夹中解析“Company-”,那就太好了。但是,我只是对整个过程有所了解。
有时,他们不会提供特定的 ReportType,而只会有 COMPANY-blahblahtimestamp。在这种情况下,他们希望将其移动到 COMPANY 文件夹的根目录。关于如何做到这一点的任何想法??
感谢您对此的帮助!我尝试了一些变化,但仍然不太正确。希望我提供更多信息会有所帮助...:
我必须移动的文件:
公司报告1_yyyymmdd 公司-Report2_yyyymmdd 公司-文件名yyyymmdd 公司-文件名-yyyymmdd
我需要的结果是创建了一个 Company 文件夹,如果它不存在的话。然后在 Company 下创建 Report1 和 Report2 的文件夹,然后将 Report1 和 Report2 文件移到它们的文件夹中。然后将不带 _ 的两个文件移动到 Company 文件夹的根目录中。
再次感谢您在这方面的帮助!我很感激! (感谢您指出变量的作用,以便我更好地理解它们!)
【问题讨论】: