在bash脚本中,我不记得如何使用变量的值作为文件夹名称的子字符串。例如:
我有文件夹:
test_1.0_xxx test_1.2_yyy test_1.4_zzz
我想做以下事情:
for i in 1.0 1.2 1.4
do
cd test_$i_*
# do something
done
语法似乎错了:
bash: cd: test_*: No such file or directory
我也尝试在$i
周围使用反引号,但没有成功。我该怎么办?
答案 0 :(得分:2)
试试这个:
#!/bin/bash
for i in "1.0" "1.2" "1.4"
do
cd test_${i}_*
# do something
done
答案 1 :(得分:1)
$i
后面的下划线被视为变量名称的一部分。请尝试将其括在引号中:
for i in 1.0 1.2 1.4
do
cd test_"$i"_*
# do something
done
编辑:matteomattei的版本可能更正确。