【发布时间】:2012-04-18 00:01:24
【问题描述】:
我有一个理论问题:
1) getline()的系统如何传递一个变量?
awk 'BEGIN{var="ls"; var | getline var; system("echo $var")}'
2) 如何为输出系统(“ls”)分配一个变量并在awk中打印结果?
awk 'BEGIN{var="system("ls")"; print '$var'}'
3) 能否在系统中分配一个变量(var = "ls")并在awk中打印结果?
awk 'BEGIN{system(var="ls"); print "'"$var"'"}'
感谢您提供的信息。
编辑:
torek:感谢您的回复。
我知道在第一个示例中,您可以这样做:
awk 'BEGIN { while ("ls -l" | getline var) system("echo " var );}'
对于这个应用程序,你不能从系统()分配一个变量输出?如本例所示:
awk 'BEGIN {var="ls -l"; system(var); print var}'
【问题讨论】: