gpt4 book ai didi

linux - 如何在 Unix 中将数据拆分为两条新记录?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:46:45 25 4
gpt4 key购买 nike

我有一个数据需要将一条记录分成两条新记录。我的样本数据是这样的:

id  country  place
1 A mall park
2 B beach
3 C hotel resort
4 D museum
5 E garden

我希望数据变成这样:

id  country place
1 A mall
1 A park
2 B beach
3 C hotel
3 C resort
4 D museum
5 E garden

数据以制表符分隔。我尝试使用 sedawk,但无法获得正确的语法。我可以使用其他命令来获得所需的输出吗?

最佳答案

使用 awk 很容易做到:

 awk -v OFS="\t" 'NF == 3 { print } NF == 4 { print $1, $2, $3; print $1, $2, $4 }' some_file

sed 也不会更难:

sed '/ /{h;s/ .*//p;x;s/[^\t]\+ //}' some_file

关于linux - 如何在 Unix 中将数据拆分为两条新记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43273853/

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