我已经练习for
了流程控制,参考了一个示例脚本,例如;
if [ $(id -u) = "0" ]; then
dir_list="/home/*"
else
dir_list=$HOME
fi
for home_dir in $dir_list; do
以上部分引用了“流控制 - 第 3 部分” http://linuxcommand.org/lc3_wss0130.php
然后,为了检查变量中的通配符在for
流控制中的行为,我尝试了以下几行;
#!/bin/bash
binlist="~/bin/*"
for i in $binlist; do
echo $i
done
我希望扩展通配符并将所有文件~/bin/
显示为输出,但它没有发生。输出只是~/bin/*
.
如果我不使用该变量,而是直接分配~/bin/*
到 列表中for
,那么我期望会发生什么,其中的所有文件都会~/bin/
显示出来。
问题=====
如何启用变量中的通配符来扩展?
还是我误解了参考站点的示例代码的意图?
==============
感谢您阅读我的问题!