Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 将Linux输出更改为csv_Bash_Csv_Tr - Fatal编程技术网

Bash 将Linux输出更改为csv

Bash 将Linux输出更改为csv,bash,csv,tr,Bash,Csv,Tr,我需要收集一些bash输出,最好是在一个整洁的表中。我收到的输出如下所示: Name 1 { value 1.1 value 1.2 value 1.3 } Name 2 { value 2.1 value 2.2 value 2.3 } ... Name n { value n.1 value n.2 value n.3 } 以此类推——数据量当然因输出而异 我需要将其转换为如下所示: Name 1 value 1.1 value

我需要收集一些bash输出,最好是在一个整洁的表中。我收到的输出如下所示:

Name 1 {
   value 1.1
   value 1.2
   value 1.3
}
Name 2 {
   value 2.1
   value 2.2
   value 2.3
}
...
Name n {
   value n.1
   value n.2
   value n.3
}
以此类推——数据量当然因输出而异

我需要将其转换为如下所示:

Name 1   value 1.1   value 1.2   value 1.3
Name 2   value 2.1   value 2.2   value 2.3
...
Name n   value n.1   value n.2   value n.3

提前谢谢

好主意。它可以进一步简化:
tr-d“\n{”
这很有帮助,但我还有一个问题:如何修改它,在每段数据之间添加逗号或分号。这将有助于根据分隔符>好问题将其导入excel,但您的输出不是CSV,甚至不是TSV(至少在输入样本数据中没有选项卡)。
cat file.txt | tr -d "\n" | tr -s "}" "\n" | tr -d "{"