在bash中创建一个逗号分隔的数组

时间:2016-04-25 11:27:39

标签: bash

我有一个包含以下内容的文件。

line1  
line2  
line3

我需要像这样创建数组

('line2','line2','line3')

我该怎么做?

2 个答案:

答案 0 :(得分:0)

您可以使用以下内容:

 while read line; do printf "'$line',"; done < file | sed 's/^/(/;s/,$/)\n/'

while循环获取内容并将其括在括号中。

s/^/(/在字符串的开头添加(

s/,$/)\n/正在用,替换最后的)和回程。

答案 1 :(得分:0)

应该帮助你:

sed -r "s/^|$/'/g" file | echo "(`paste -d, -s`)"

我使用sed在“开始”和“开始”中添加'每行的结尾,然后使用paste连接内容,并使用echo将其括在括号中。