linux bash将文件内容的每一行放在一个数组中

linux bash将文件内容的每一行放在一个数组中

我们要做的事情是将一个文件的每一行的内容读出来放在一个数组中。

可以通过下面的命令实现:

 

$ IFS=$'\r\n' GLOBIGNORE='*' :; XYZ=($(cat xxx))

$ echo "${XYZ[0]}"

xxx就是你的文件,比如filesList.txt,那么命令就是

$ IFS=$'\r\n' GLOBIGNORE='*' :; XYZ=($(cat filesList.txt))

$ echo "${XYZ[0]}"

echo "${XYZ[0]}"就是打印出第一个变量,如果第二个就是

"${XYZ[1]}"

如果是所有的就是

echo "${XYZ[@]}"

 

接下来就可以对数组中没有个元素进行你想要的操作:

FOR item IN ${XYZ[*]}
DO
    echo $item
DONE

版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.

    分享到:

留言

你的邮箱是保密的 必填的信息用*表示