分隔使用grep命令创建的输出

时间:2019-07-17 11:56:13

标签: shell grep git-bash delimited

我想运行一行代码来创建一个文本到以逗号分隔的文件上的列输出。

我创建了一个文件,该文件导致以逗号分隔的格式创建输出。因此,所有数据都在A列中,并以,分隔。 该文件为apilist.xls 我想添加一行代码,将此处的数据提取出来并将数据分离到各列中,类似于将excel命令文本添加到各列中。

我尝试过:

$ cat apilist.xls | tr "\\t" "," > apilist.csv

这给出了消息:

  

bash:$:找不到命令

它创建了apilist.csv文件,但是其中没有数据。

关于如何进行此操作的任何建议?

$ cat apilist.xls | tr "\\t" "," > apilist.csv

定界输出-将数据从一列移至多列。

1 个答案:

答案 0 :(得分:0)

您需要先将.xls文件转换为.csv,然后才能对其进行处理。以下是转换文件的多种方法:https://linoxide.com/linux-how-to/methods-convert-xlsx-format-files-csv-linux-cli/

然后可以使用awk在数据之间创建用逗号分隔的列。假设您有三列用逗号分隔-您需要编辑以下命令来满足您的需要:

awk -F ',' '{printf("%s %s %s\n", $1, $2, $3)}' input_file