繁体   English   中英

centos Shell脚本转换为mv动态文件名

[英]centos Shell script to mv dynamic file names

我具有以下文件结构:

/uploads/<blog_id>/10/155

对于每个blog_id,都有一个名为10的文件夹,并且在该文件夹内是另一个文件夹155 文件夹155有一堆文件。

我只是想将所有blog_id的所有文件从/10/155 blog_id移动到/10

基本上,我只想删除155文件夹,将其内容下移到10 我不在乎155留在那里或被删除。

我尝试了此脚本的多个版本:

for file in /var/www/html/uploads/*/10/155; do mv $file ${file%/*}/10; done

最终,我能够将155文件夹重命名为10,例如: */10/10 我将155向下移动了2个级别(接近10个级别),例如: */155

有什么帮助吗?

只需遍历blog_id目录。 然后,对于每个人,您都可以做您需要的事情:

for blog_dir in /uploads/*; do
    mv "$blog_dir"/10/155/* "$blog_dir"/10/
    rmdir "$blog_dir"/10/155
done

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM