shell脚本:行列转换

Posted chongchong88

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本:行列转换相关的知识,希望对你有一定的参考价值。

Mybatis中写sql,如select,会涉及到一长串列名。

`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) COLLATE utf8mb4_bin,
`mainImg` varchar(255) COLLATE utf8mb4_bin NOT NULL,
...

现想将table描述中的列名转为以逗号分割的一行字符串,如:id,name,mainImg,...

操作脚本是:

awk ‘{a=a$1","}END{print a}‘ filename

注:$1表示第一列,大概意思是:

for(String s : firstColumnList)
    sb.append(s).append(",")
print sb.toString();

另外由行转为列,如

id,name,mainImg,...

==》

id
name
mainImg
...

shell命令:

sed ‘s/,/\n/g‘ filename

即简单将逗号替换为换行即可

以上是关于shell脚本:行列转换的主要内容,如果未能解决你的问题,请参考以下文章

Shell练习 行列转换

代码片段:Shell脚本实现重复执行和多进程

shell 脚本 片段

用于确保在任何给定时间仅运行一个 shell 脚本的 shell 片段 [重复]

常用python日期日志获取内容循环的代码片段

将我的代码从 perl 转换为 shell 脚本