我有一个文件夹,里面有多个子文件夹和文件。它们的名称都很相似,但唯一的区别是患者的编号
例子
Analysis/Patient_01/Brain/image_patient_01_merged.nii
Analysis/Patient_02/Brain/image_patient_02_merged.nii
Analysis/Patient_03/Brain/image_patient_03_merged.nii
.
.
.
等等。
在主文件夹(Analysis
)中我想编写一个脚本来.nii
循环对每个文件执行相同的操作。
例子
fslstats image_patient_01_merged.nii -M
fslstats image_patient_02_merged.nii -M
fslstats image_patient_03_merged.nii -M
.
.
.
.
换句话说,我需要对每个子目录中的nii文件做相同的分析。
答案1
使用 bash,在Analysis
文件夹中,使用一个简单的 for 循环:
for f in */*/*.nii
do
flstats "${f##*/}" -M
done
*/*/*.nii
将扩展为Patient_01/Brain/image_patient_01_merged.nii
等,并从中${f##*/}
获取文件名。image_patient_01_merged.nii