将具有特定名称的文件复制到特定目录

将具有特定名称的文件复制到特定目录

我正在处理大量的功能磁共振成像数据,我需要加快目录和子目录的操作速度。我为每个研究参与者都有大量的目录,每个目录都包含一个结构成像文件、一个功能成像文件以及目录“struct”和“func”,就像这样

/rMDD/participant 1
        /file_structural.nii
        /file_functional.nii
        /Struct
        /Funct

我需要循环遍历所有这些参与者子文件夹,并将名称中包含“结构”的 .nii 文件复制到 Struct 子文件夹中,并将包含“功能”的 .nii 文件复制到 Funct 子文件夹中。我怎么能这么做呢?

答案1

这是一个bash遍历您问题中的目录的脚本:

#!/bin/bash

# cd to /rMDD
cd /rMDD || exit 1;
for dir in participant*; do
    echo mv "$dir"/{*structural*.nii,Struct/};
    echo mv "$dir"/{*functional*.nii,Funct/};
done;

echo当您确认它符合您的要求后,请删除关键字。

相关内容