我有一个包含数组file.txt=["0", "1", "2", "3"]的文件,我想创建一个bash来读取该文件并创建一个新的列表file2.txt =
0
1
2
3
#!/bin/bash
value=$(<file.txt)
echo "$value"
echo ${#value[@]}
for key in ${value[@]}; do echo ${key}; done >> file2.txt
它给我的结果是:
["0",
"1",
"2",
"3"],
您可以使用json_pp
来打印数组,然后使用grep
只打印数字。
cat file.txt | json_pp | grep -Po "d+" > file2.txt
如果您的系统中没有安装json_pp,您可以通过Perl安装它。
编辑:
如果你file.txt
数组存储在你提到的同样的格式,那么这一行程序也将工作:
sed -E 's/^["|"]$//g; s/", ?"/n/g' file.txt > file2.txt
说明:删除第一个["
和最后一个"]
部分,然后将每个", "
替换为新行