Hi Rayyan,
To me it looks as if you still have Windows-style CR/LF line breaks in your script. Could you try running your script file through
tr -d '\r' < original_script.sh > fixed_script.sh
on your Mac? That should remove the CR characters (I just copied this from https://en.wikipedia.org/wiki/Newline).
If that doesn’t help, could you paste the output from
cat original_script.sh | head -n 5 | hexdump -C
That should make it easier to see what is going on!
Best,
Eelke
> On 20 Jun 2016, at 09:08, Rayyan Tutunji <[log in to unmask]> wrote:
>
> Hi Mark,
>
> Thanks for the tip regarding the volume measurements. I changed the name of my T1 image to T1.nii.gz using the GUI, then reapplied the code.
> I tried rewriting my code in XCode for Mac, and in a plain text editor on Windows, but still get the same error. I also tried launching it from the native terminal and XQuartz terminal to see if that made a difference, but still got the error with "T1?.anat".
>
> Any ideas would be appreciated. Its a simple code and the script just saves me a few extra key strokes, so if it doesnt work Ill just stick to manually typing each command.
>
> Thanks again!
> Rayyan
>
> _________________
> From: FSL - FMRIB's Software Library [[log in to unmask]] On Behalf Of Mark Jenkinson [[log in to unmask]]
> Sent: Wednesday, June 15, 2016 4:41 PM
> To: [log in to unmask]
> Subject: Re: [FSL] Script Error when Running fsl_anat
>
> Hi,
>
> Filenames that contain any spaces or unusual characters are a complete nightmare to deal with. I don't know what you did to make that happen, as your script looks good. Did you use a non-text editor (e.g. Word) on the script at any point? That can encode bad characters into the script and cause problems. The most likely place for the bad character is at the end of the fsl_anat line (so that it thought the output was three characters: T then 1 then a bad linefeed-like character). Using a plain text editor in the future should avoid this.
>
> Unfortunately, fixing these filename problems for your existing outputs at the command line, or in a script, is an extremely difficult job. You might be able to fix the current outputs using your GUI file-browser, though you also need to fix the script. I suggest that you just retype the script from scratch, using an editor which is definitely a plain text editor, and then try it again.
>
> BTW - I would use the following fslmaths commands for the volume:
> fslmaths Thalamus_L.nii.gz -V
> as there's no need to load the T1 image just to calculate the volume of the mask.
>
> All the best,
> Mark
>
> From: FSL - FMRIB's Software Library <[log in to unmask]<mailto:[log in to unmask]>> on behalf of Rayyan Tutunji <[log in to unmask]<mailto:[log in to unmask]>>
> Reply-To: FSL - FMRIB's Software Library <[log in to unmask]<mailto:[log in to unmask]>>
> Date: Wednesday, 15 June 2016 at 13:05
> To: "[log in to unmask]<mailto:[log in to unmask]>" <[log in to unmask]<mailto:[log in to unmask]>>
> Subject: [FSL] Script Error when Running fsl_anat
>
> Hi all,
>
> So Ive bee trying to make a script that runs fsl_anat, then calculates the volume based on the results of the FIRST segmentation. Im trying to do this so that all I have to do is show someone how to run a script, and record the values. So far my script looks like this:
>
>
>
> ===================================
> #!/bin/sh
>
> do
>
> fsl_anat -i cos*.nii.gz -o T1
>
> cd T1.anat/first_results
>
> fslmaths T1_first_all_fast_firstseg.nii.gz - thr 49 -uthr 49 Thalamus_R.nii.gz
> fslmaths T1_first_all_fast_firstseg.nii.gz -thr 10 -uthr 10 Thalamus_L.nii.gz
>
> fslmaths Thalamus_L.nii.gz -ero Thalamus_L_1.nii.gz
> fslmaths Thalamus_R.nii.gz -ero Thalamus_R_1.nii.gz
>
> fslstats ../T1.nii.gz -k Thalamus_L.nii.gz -V
> fslstats ../T1.nii.gz -k Thalamus_L_1.nii.gz -V
>
> fslstats ../T1.nii.gz -k Thalamus_R.nii.gz -V
> fslstats ../T1.nii.gz -k Thalamus_R_1.nii.gz -V
>
> cd ../../..
>
> done
> ======================================
>
>
>
>
> For some reason though, all the files that are generated are saved with a page break:
> "T1
> .anat" for example. It appears as "T1?.anat" when I list the file in the terminal.
>
> Rendering the rest of the script useless. Im guessing this error is due to my very limited knowledge, but was wondering if anyone has any helpful ideas. I tried separating using the fslmaths part of the script onwards, but it still did the same thing with the page break. If anyone has any ideas or suggestions, itd be great!
|