相关疑难解决方法(0)

在unix中用1个逗号替换多个连续的空格

我有以下sed命令:

sed 's/\s/,/g' input > output.csv
Run Code Online (Sandbox Code Playgroud)

(我从这个相关主题得到了命令)

它转为以下输入:

SNP  A1  A2     FRQ    INFO      OR      SE       P
10:33367054   C   T  0.9275  0.9434  1.1685  0.1281  0.1843
10:33367707   G   A  0.9476  0.9436  1.0292  0.1530  0.8244
10:33367804   G   C  0.4193  1.0443  0.9734  0.0988  0.6443
10:33368119   C   A  0.9742  0.9343  1.0201  0.1822  0.9156
Run Code Online (Sandbox Code Playgroud)

成:

SNP,,A1,,A2,,,,,FRQ,,,,INFO,,,,,,OR,,,,,,SE,,,,,,,P
10:33367054,,,C,,,T,,0.9275,,0.9434,,1.1685,,0.1281,,0.1843
10:33367707,,,G,,,A,,0.9476,,0.9436,,1.0292,,0.1530,,0.8244
10:33367804,,,G,,,C,,0.4193,,1.0443,,0.9734,,0.0988,,0.6443
10:33368119,,,C,,,A,,0.9742,,0.9343,,1.0201,,0.1822,,0.9156
Run Code Online (Sandbox Code Playgroud)

我需要一个命令,将多个连续的空格转换为一个commma,给我一个这样的输出:

SNP,A1,A2,FRQ,INFO,OR,SE,P
10:33367054,C,T,0.9275,0.9434,1.1685,0.1281,0.1843
10:33367707,G,A,0.9476,0.9436,1.0292,0.1530,0.8244
10:33367804,G,C,0.4193,1.0443,0.9734,0.0988,0.6443
10:33368119,C,A,0.9742,0.9343,1.0201,0.1822,0.9156
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

unix csv whitespace sed

7
推荐指数
3
解决办法
2万
查看次数

在bash/unix中删除CSV文件的所有列的空格

我有一个CSV文件,其中每列包含在实际值之前添加的不必要的额外空格.我想删除所有空格来创建一个新的CSV文件.

例如

输入CSV文件中的一行

 123, ste hen, 456, out put
Run Code Online (Sandbox Code Playgroud)

预期的输出CSV文件

123,ste hen,456,out put
Run Code Online (Sandbox Code Playgroud)

我尝试使用awk修剪每一列,但它没有用.

unix bash shell awk sed

1
推荐指数
2
解决办法
5485
查看次数

标签 统计

sed ×2

unix ×2

awk ×1

bash ×1

csv ×1

shell ×1

whitespace ×1