#!/usr/bin/perl -w use strict; use warnings; use Data::Dump qw(dump); my $frules = "rids.csv"; my $adni_s = "ADNI"; my $dest = "mri"; my $series = 0; my %arules; open IDR, "<$frules" or die "No rules file here, asshole\n"; while(){ if(/^\d{4},.*/){ my ($value, $key) = /^(\d*),(.*)$/; chomp $key; $arules{$key} = $value; } } close(IDR); foreach my $ptid (sort keys %arules){ if(-d "$adni_s/$ptid"){ my $ford = 'find '.$adni_s.'/'.$ptid.'/ -name *.nii'; my @s_files = qx/$ford/; my $count = 10; foreach my $nii_file (@s_files){ chomp $nii_file; $count++; my $wn = sprintf("%04d", $count); my $order = "\$FSLDIR/bin/imcp $nii_file $dest/smc$arules{$ptid}s$wn.nii.gz"; system($order); } } }