Linux:在查找文件时使用foldername循环

时间:2017-02-21 20:09:45

标签: linux loops directory

我目前正在尝试使用以下linux脚本循环访问文件夹并使用函数执行计算:

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

问题:如何使用foldername查找正确的文件?例如,foldername是scan1,我想使用名为gaf_scan1_recording_mic.nii的文件作为函数。

非常感谢,

埃里克

1 个答案:

答案 0 :(得分:0)

在大多数情况下,$var${var}是相同的(仅在表达式中含糊不清时需要大括号):

var=test
echo $var
# test
echo ${var}
# test
echo $varworks
# prints nothing (there is no variable 'varworks')
echo ${var}works
# testworks

您可以使用此文件夹名称(gaf_${f}_recording_mic.nii):

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