iva*_*van 7 awk text-processing
我正在尝试解析如下使用消息:
Usage:
docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
docker-compose -h|--help
...
Commands:
build Build or rebuild services
bundle Generate a Docker bundle from the Compose file
...
Run Code Online (Sandbox Code Playgroud)
Command
仅获取名称。所以我希望跳过所有行并包括该Commands:
行,然后在所有后续行上打印第一个单词,即
build
bundle
...
Run Code Online (Sandbox Code Playgroud)
目前我正在做
docker-compose --help | sed -e '1,/Commands:/d' | awk '{ print $1 }'
Run Code Online (Sandbox Code Playgroud)
虽然这有效,但我怀疑我可以用一个awk
. 到目前为止我最接近的是:
docker-compose --help | awk '/Commands:/,0 { print $1 }'
Run Code Online (Sandbox Code Playgroud)
但这包括匹配的Commands:
行。可以做到吗?
Ste*_*uch 13
如果您标记了围栏的存在,那么您可以使用它来决定打印下一行,然后像:
awk 'x==1 {print $1} /Commands:/ {x=1}'
Run Code Online (Sandbox Code Playgroud)