gpt4 book ai didi

Linux shell 脚本 : Pass variable from stdin to awk

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

<分区>

我有一个逗号分隔的 .txt 文件,结构如下:

ABC,NAME1,LASTNAME1
DEF,NAME2,LASTNAME2
GHI,NAME3,LASTNAME3

运行时:

$ ./script.sh file.txt

#!/bin/bash
awk -F, '/NAME1/{print $3}' "$1"

我得到了我想要的输出:

LASTNAME1

当尝试通过将变量传递给 awk 来替换 NAME1 时:

$ ./script.sh file.txt NAME1

#!/bin/bash
awk -v n="$2" -F, '/$n/{print $3'} "$1"

我根本没有得到任何输出。我检查过,在 bash 中输入的 $2 确实是 NAME1。我错过了什么?

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