我编写了一个程序(Cifti_subject_fmri),它比较两个文件夹中的文件名是否匹配,并基本上执行一组指令
#!/bin/bash -- fix_mni_paths
source activate ciftify_v1.0.0
export SUBJECTS_DIR=/scratch/m/mchakrav/dev/functional_data
export HCP_DATA=/scratch/m/mchakrav/dev/tCDS_ciftify
## make the $SUBJECTS_DIR if it does not already exist
mkdir -p ${HCP_DATA}
SUBJECTS=`cd $SUBJECTS_DIR; ls -1d *` ## list of my subjects
HCP=`cd $HCP_DATA; ls -1d *` ## List of HCP Subjects
cd $HCP_DATA
## submit the files to the queue
for i in $SUBJECTS;do
for j in $HCP ; do
if [[ $i == $j ]];then
parallel "echo ciftify_subject_fmri $i/filtered_func_data.nii.gz $j fMRI " ::: $SUBJECTS |qbatch --walltime '05:00:00' --ppj 8 -c 4 -j 4 -N ciftify_subject_fmri -
fi
done
done
当我在群集中运行此代码时,我收到错误消息
./Cifti_subject_fmri: [[AS1: command not found
查询ciftify_subject_fmri是toolbox ciftify的一部分,因为它执行它需要以下指令
ciftify_subject_fmri <func.nii.gz> <Subject> <NameOffMRI>
我有33个科目[AS1 -AS33],每个科目都有自己的func.nii.gz文件,位于SUBJECTS目录下,结果需要填写在HCP目录中,fMRI是文件格式的名称。
有人可以让我知道为什么我在循环中出现错误