我有一个csv文件,我需要一个一行地读取而不删除任何字符,例如“;等”
in.csv
{ "customer": { "name": "abc", "email":"mailme2@xxx.com","account_classification": "xyz"} }
{ "customer": { "name": "def", "email":"mailme2@xxx.com","account_classification": "xyz"} }
{ "customer": { "name": "g,h", "email":"mailme2@xxx.com","account_classification": "xyz"} }
我的代码
declare -a demo=($(cat in.csv))
for i in "${demo[@]}"
do
echo "$i"
done
输出(预期输出)
{ "customer": { "name": "abc", "email":"mailme2@xxx.com","account_classification": "xyz"} }
{ "customer": { "name": "def", "email":"mailme2@xxx.com","account_classification": "zyx"} }
我得到的输出(上面的代码输出):
"{ ""customer"": { ""name"": ""abc"", ""email"":""mailme2@xxx.com"",""account_classification"": ""xyz""} }" "{ ""customer"": { ""name"": ""def"", ""email"":""mailme2@xxx.com"",""account_classification"": ""xyz""} }" "{ ""customer"": { ""name"": ""g,h"", ""email"":""mailme2@xxx.com"",""account_classification"": ""xyz""} }
有人可以给我示例代码吗?
答案 0 :(得分:0)
您可以使用类似的
while IFS= read -r line; do
printf "%s\n" "${line}"
done < in.csv
或者您希望在将来的改进中更改生产线
sed 's/future_change/new_content/g' in.csv