2
我在bash脚本其给出以下输出如何循环输出命令?
repository: docker/images
tags:
- 0.1-1
- 0.1-2
- 0.1-3
- 0.1-6
- 0.1-7
- 0.1-9
但是有一个命令,从上述输出,我只需要通过0.1-1, 0.1-2 ...
浏览和运行不同的命令。
请让我知道如何可以做到这一点
我在bash脚本其给出以下输出如何循环输出命令?
repository: docker/images
tags:
- 0.1-1
- 0.1-2
- 0.1-3
- 0.1-6
- 0.1-7
- 0.1-9
但是有一个命令,从上述输出,我只需要通过0.1-1, 0.1-2 ...
浏览和运行不同的命令。
请让我知道如何可以做到这一点
添加一个测试用grep
检查,如果行开头-
:
... | grep '^-' | while read -r line; do echo "$line"; ## Do stuffs; done
由于grep
的输出进行缓冲,则可能需要行缓冲,需要GNU grep
:
... | grep --line-buffered '^-' | while ...; do ...; done
或者使用stdbuf
:
... | stdbuf -oL grep '^-' | while ...; do ...; done