gpt4 book ai didi

linux - 需要帮助在 csv 文件中创建新列

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

我需要操作下面的文件,将任何带有前导“空格”的内容移动到其自己的列中,并使用不带前导空格的数据填充新列。我想通过 Linux 中的自动化来做到这一点

Example01  
xx:yy:zz:0f:9a:00
xx:yy:zz:0f:9a:0a
xx:yy:zz:0f:9a:0b
xx:yy:zz:0f:9a:0c
xx:yy:zz:0f:9a:0d
xx:yy:zz:0f:9a:0e

Example02
aa:bb:cc:ab:99:0a
aa:bb:cc:ab:99:0b
aa:bb:cc:ab:99:0c
aa:bb:cc:ab:99:0d

Example03
aa:bb:cc:ab:99:0a
aa:bb:cc:ab:99:0b
aa:bb:cc:ab:99:0c
aa:bb:cc:ab:99:0d

Example04
aa:bb:cc:ab:99:0a
aa:bb:cc:ab:99:0b
aa:bb:cc:ab:99:0c
aa:bb:cc:ab:99:0d

这是所需输出的示例:

Example01    
Example01 xx:yy:zz:0f:9a:00
Example01 xx:yy:zz:0f:9a:0a
Example01 xx:yy:zz:0f:9a:0b
Example01 xx:yy:zz:0f:9a:0c
Example01 xx:yy:zz:0f:9a:0d
Example01 xx:yy:zz:0f:9a:0e

Example02
Example02 aa:bb:cc:ab:99:0a
Example02 aa:bb:cc:ab:99:0b
Example02 aa:bb:cc:ab:99:0c
Example02 aa:bb:cc:ab:99:0d

Example03
Example03 aa:bb:cc:ab:99:0a
Example03 aa:bb:cc:ab:99:0b
Example03 aa:bb:cc:ab:99:0c
Example03 aa:bb:cc:ab:99:0d

Example04
Example04 aa:bb:cc:ab:99:0a
Example04 aa:bb:cc:ab:99:0b
Example04 aa:bb:cc:ab:99:0c
Example04 aa:bb:cc:ab:99:0d

最佳答案

awk '{ if ($0 !~ /^ +/) a = $0;} {if (a != $0)  print a , " " , $0; else  print $0;}'

演示:

renegade@Renegade:~$ cat test.txt
Example01
xx:yy:zz:0f:9a:00
xx:yy:zz:0f:9a:0a
xx:yy:zz:0f:9a:0b
xx:yy:zz:0f:9a:0c
xx:yy:zz:0f:9a:0d
xx:yy:zz:0f:9a:0e

Example02
aa:bb:cc:ab:99:0a
aa:bb:cc:ab:99:0b
aa:bb:cc:ab:99:0c
aa:bb:cc:ab:99:0d

Example03
aa:bb:cc:ab:99:0a
aa:bb:cc:ab:99:0b
aa:bb:cc:ab:99:0c
aa:bb:cc:ab:99:0d

Example04
aa:bb:cc:ab:99:0a
aa:bb:cc:ab:99:0b
aa:bb:cc:ab:99:0c
aa:bb:cc:ab:99:0d
renegade@Renegade:~$ awk '{ if ($0 !~ /^ +/) a = $0;} {if (a != $0) print a , " " , $0; else print $0;}' test.txt
Example01
Example01 xx:yy:zz:0f:9a:00
Example01 xx:yy:zz:0f:9a:0a
Example01 xx:yy:zz:0f:9a:0b
Example01 xx:yy:zz:0f:9a:0c
Example01 xx:yy:zz:0f:9a:0d
Example01 xx:yy:zz:0f:9a:0e

Example02
Example02 aa:bb:cc:ab:99:0a
Example02 aa:bb:cc:ab:99:0b
Example02 aa:bb:cc:ab:99:0c
Example02 aa:bb:cc:ab:99:0d

Example03
Example03 aa:bb:cc:ab:99:0a
Example03 aa:bb:cc:ab:99:0b
Example03 aa:bb:cc:ab:99:0c
Example03 aa:bb:cc:ab:99:0d

Example04
Example04 aa:bb:cc:ab:99:0a
Example04 aa:bb:cc:ab:99:0b
Example04 aa:bb:cc:ab:99:0c
Example04 aa:bb:cc:ab:99:0d

关于linux - 需要帮助在 csv 文件中创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60608738/

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