Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 我可以从当前行创建awk变量吗?_Variables_Awk - Fatal编程技术网

Variables 我可以从当前行创建awk变量吗?

Variables 我可以从当前行创建awk变量吗?,variables,awk,Variables,Awk,我有两行: Pid: 2 PPid: 1 我需要打印如下内容: PID_Process=2:PPID_Process=1 awk 'NR==1 {PID=$2} NR==2 {PPID=$2} END {print "PID="PID, "PPID="PPID}' 我有这个,但不太管用: awk -v PID='NR==1{$2}' -v PPID='NR==2{$2}' '{print "PID="PID, "PPID="PPID}' -v在awk

我有两行:

Pid: 2
PPid: 1
我需要打印如下内容:

PID_Process=2:PPID_Process=1
awk 'NR==1 {PID=$2}
     NR==2 {PPID=$2}
     END {print "PID="PID, "PPID="PPID}'
我有这个,但不太管用:

awk -v PID='NR==1{$2}' 
    -v PPID='NR==2{$2}'
    '{print "PID="PID, "PPID="PPID}'

-v
在awk开始之前创建变量。要在其运行时分配它们,您需要以下内容:

PID_Process=2:PPID_Process=1
awk 'NR==1 {PID=$2}
     NR==2 {PPID=$2}
     END {print "PID="PID, "PPID="PPID}'
或更简单:

awk 'NR==1 {PID=$2}
     NR==2 {PPID=$2; print "PID="PID, "PPID="PPID; exit}'
其他一些变化

awk 'NR==1 {f=$2;next} {print "PID_Process="f":PPID_Process="$2}' file
PID_Process=2:PPID_Process=1