gpt4 book ai didi

linux - 需要在 Linux 中将命令的输出转换为逗号分隔值

转载 作者:太空宇宙 更新时间:2023-11-04 05:46:30 25 4
gpt4 key购买 nike

我正在编写一段代码,在 shell 脚本中按以下方式生成输出。我需要以逗号分隔的格式输出。这是示例输出,实际值的数量等可能会根据给定的输入而有所不同,但输出的整体格式将保持不变。

------------------------
| column_name |
------------------------
| TB_CODIGO |
| TB_ELEMENT |
| TB_INGLES |
| TB_IMSS |
| TB_NUMERO |
| TB_TEXTO |
| LLAVE |
------------------------

我想要以下格式的输出:

TB_CODIGO,TB_ELEMENT,TB_INGLES,TB_IMSS,TB_NUMERO,TB_TEXTO,LLAVE 

最佳答案

另一种方式举例:

echo "
------------------------
| column_name |
------------------------
| TB_CODIGO |
| TB_ELEMENT |
| TB_INGLES |
| TB_IMSS |
| TB_NUMERO |
| TB_TEXTO |
| LLAVE |
------------------------
" | sed 's/[|,-]//g' | paste -d, -s | tr -d '[[:space:]]' | sed -e 's/,,//g' -e 's/column_name//g'

TB_CODIGO,TB_ELEMENT,TB_INGLES,TB_IMSS,TB_NUMERO,TB_TEXTO,LLAVE

所以,通用方法如下:

<your_mysql_output> | sed 's/[|,-]//g' | paste -d, -s | tr -d '[[:space:]]' | sed -e 's/,,//g' -e 's/column_name//g'

如果您在 MySQL 查询本身中抑制列标题和边框,则可以最大限度地减少对列名和边框字符的解析。例如,

mysql -u root -p -s -r -e "show databases;"
Enter password:
Database
information_schema
mysql
test

关于linux - 需要在 Linux 中将命令的输出转换为逗号分隔值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56853629/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com