gpt4 book ai didi

Linux bash脚本从文件中提取数据

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

我正在尝试从文件 1 中提取数据并将该数据粘贴到另一个文件中。

文件 1 如下所示:

[order1]
Amount 4
HappyMeal yes;
Sex "m"
Name "Jack"

[order2]
Amount 1
HappyMeal yes;
Sex "f"
Name "Mary"

[order3]
Amount 3
HappyMeal no;
Sex "f"
Name "Mary"

每个客户的一些行(不是全部)应粘贴到文件 2 中,如下所示:

Customer    "Jack"   yes    m

Customer "Mary" yes f
Customer "Mary" no f

我尝试过以下内容:

#!/bin/bash
ORDER_NR=`grep -o order[0-9]* file1`

for i in $ORDER_NR
do
CUST_NAME=`awk -v RS='' '/\y${ORDER_NR}\y/' file1`

echo "$CUST_NAME" >>file2
done

由于某种原因,我只得到一个空文件。

最终,我希望 sed 替换模板文件中的变量。

知道为什么我总是收到空文件吗?我认为它至少应该回显文件 2 中的 CUST_NAME 变量。

最佳答案

尝试一下这一行:

awk -v RS='\\[[^]]*\\]' 'NF{print "Customer",$8,$4,$6}' file

它给出:

Customer "Jack" yes; "m"
Customer "Mary" yes; "f"
Customer "Mary" no; "f"

它与您的输出不完全相同。然而,这对你来说是一个很好的起点。做一些调整你就会得到你想要的。

关于Linux bash脚本从文件中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35555422/

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