Проблема: я хочу перечислить все модули, соответствующие выражению «test-», для которых мое выражение работает хорошо, и затем я хочу вывести только $ 1 и $ 2, если это выражение существует в строке. как я могу? Я хочу сделать это с одним AWK, а не с трубой снова.
kubectl get pods --all-namespaces --field-selector=spec.nodeName=node1,status.phase!=Succeeded --no-headers | awk '$1 ~ /maglev-/'
выход
test-78ac951e-89a6-4199-87a4-db8a1b8b054f export-4cb52be4-8a90-400-ilxr4b-avexport-xavierisp-sjc4--b76888-b3f 1/1 Running 0 20h
test-78ac951e-89a6-4199-87a4-db8a1b8b054f export-9b55f0d5-071d-431-1d2ux0-avexport-xavierisp-sjc4--a4dd85-102 1/1 Running 0 17h
dtlu @ dtlu16 ~
└─ $ ▶ kubectl get pods --all-namespaces --field-selector=spec.nodeName=node1,status.phase!=Succeeded --no-headers | awk '$1 ~ /test-/' '{print $1,$2}'
фактический выход:
awk: cannot open {print $1,$2} (No such file or directory)
ожидаемый выход
test-78ac951e-89a6-4199-87a4-db8a1b8b054f export-4cb52be4-8a90-400-ilxr4b-avexport-xavierisp-sjc4--b76888-b3f
test-78ac951e-89a6-4199-87a4-db8a1b8b054f export-9b55f0d5-071d-431-1d2ux0-avexport-xavierisp-sjc4--a4dd85-102