如何将文件中的变量分配到 bash 脚本中并为其编写特定的循环?

如何将文件中的变量分配到 bash 脚本中并为其编写特定的循环?

我有一个包含 n 行的文件,每行有三个变量(即单词),用逗号分隔。我想在 bash 中编写一个脚本,该脚本获取每个变量并填充模板消息,例如:

To $variable1 
You need to buy $variable2
From $variable3

我的问题是我不知道如何在 bash 中分配这些变量,以及如何编写一个 bash 脚本,为所有 n 行以不同的文件名生成上述消息。

答案1

假设a.file包含您的数据:

while IFS=, read var1 var2 var3; do
    msg="""\
To $var1 
You need to buy $var2
From $var3
"""
    echo "$msg"
done < a.file

$IFS是分隔单词的字符

read是一个内置的 shell 函数,它读取一行输入,将其分成单词并将它们分配给给定的变量。

相关内容