我想循环浏览单词列表,比如:
words="hello world"
for w in $words; do
echo $w
done
但我希望单词列表(words="hello world"
(来自放置在目录中的.env
文件,然后用export $(grep -v '^#' .env | xargs)
读取env文件。
然而,我可以完成上面的操作,for循环只循环第一个单词,就好像words
中的空白正在停止循环一样。为什么?
我确实将.sh
脚本中的变量复制到了.env
文件中,但它的工作方式不同。
一个简单的解决方案是用逗号而不是空格分隔单词:
.env文件
words=hello,world
脚本
然后循环将工作:
export $(grep -v '^#' .env | xargs)
for w in $words; do
echo $w
done