首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在awk中获得系统输出?

在awk中获取系统输出可以通过使用管道将命令的输出传递给awk,并使用$()来捕获命令的输出。以下是一个示例:

代码语言:txt
复制
awk '
  BEGIN {
    print "Before command execution:"
  }
  {
    cmd="ls -l"
    print $0 | "cmd"
  }
  END {
    print "After command execution:"
  }
'

在这个示例中,BEGIN块和END块用于输出“Before command execution”和“After command execution”。在内部块中,我们使用$()捕获ls -l命令的输出,并将其传递给awk。

如果您想要执行更复杂的任务,可以使用awksystem()函数。例如,以下代码将执行cat /etc/passwd命令,并将输出分成每行:

代码语言:txt
复制
awk '
  BEGIN {
    print "Before command execution:"
  }
  {
    cmd="cat /etc/passwd"
    print $0 | "cmd"
  }
  END {
    print "After command execution:"
  }
'

在内部块中,我们使用$()捕获cat /etc/passwd命令的输出,并将其传递给awk。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券