从文本文件中向 bash 变量馈送多行

  • 本文关键字:变量 bash 文本 文件 bash
  • 更新时间 :
  • 英文 :


这可能会被标记为重复,但是在阅读了几篇帖子后,我仍然无法使我的bash脚本工作。我有一个多行的文本文件;每行只有 1 个字符串。我想将内容导入 bash 变量,例如每一行都是一个单独的元素。因此,例如,如果MYVAR是提到的变量,我希望能够通过其位置访问任何元素,例如:

for i in $(seq 0 2)
do
        echo ${MYVAR[$i]}
done

以上只是一个例子;我不需要 for 循环,这就是为什么我没有使用while read LINE策略。我已经尝试了几种方法,但该文件一直作为包含整个内容的 1 个长字符串导入。希望我的目的很明确,感谢任何帮助。

IFS 更改为仅换行符,并使用 (( 将文件读入数组:

OFS=$IFS
IFS=$'n'
MYVAR=($(<myfilename.txt))
for i in $(seq 0 2)
do
        echo ${MYVAR[$i]}
done
# setup the IFS to its original value
IFS=$OFS

最新更新