Acho que você tinha duas subpastas ao testar / executar seu comando.
Seu código:
for d in ./*/ ; do (cd "$d" && dcm2nii -n y -r y -x y -g n ../*/dicom/); done;
- primeiro entra em uma subpasta
$d
- então
dcm2nii ...
on../*/dicom
, que se traduz em: subpasta "dicom" de todas as pastas do superfolder - depois vai para a segunda subpasta e faz o mesmo
Tente isto:
for d in ./*/ ; do (cd "$d" && dcm2nii -n y -r y -x y -g n dicom/); done;
ou (possivelmente) isto:
dcm2nii -n y -r y -x y -g n ../*/dicom/