I’m currently trying to use the following linux script to loop through folders and perform calculations using a function:
JavaScript
x
for f in s*
do
echo "You are in the following folder - $s"
cd $s
# FUNCTION SHOULD BE HERE
cd /C/Users/Eric/Desktop/Files
done
The problem: How can I use the foldername to find the correct file? For example, the foldername is scan1
and I want to use the file called gaf_scan1_recording_mic.nii
for the function.
Thanks a lot,
Eric
Advertisement
Answer
In most cases, $var
and ${var}
are the same (the braces are only needed for ambiguity in the expressions):
JavaScript
var=test
echo $var
# test
echo ${var}
# test
echo $varworks
# prints nothing (there is no variable 'varworks')
echo ${var}works
# testworks
You can use the folder name like this (gaf_${f}_recording_mic.nii
):
JavaScript
for f in *; do
# Check if $f is a directory
if [[ -d $f ]]; then
echo "You are in the following folder - $f"
cd $f
# The filename to use for your function
do_stuff gaf_${f}_recording_mic.nii
fi
done