Ich schreibe ein Shell-Skript, um mit unserem lokalen Docker Repo zu interagieren und habe festgestellt, dass ich andere Ergebnisse von meinem Bash-Skript als erwartet bekomme. Zuerst wird von der Befehlszeile:Nicht alle Zeilen von grep Ausgabe zurückgegeben
[email protected]: docker images | grep gateway
ich:
test-gateway 4.27.0-1.5.2-301 b215d109c627 8 days ago 1.977 GB
test-gateway dev b215d109c627 8 days ago 1.977 GB
test-gateway staging b215d109c627 8 days ago 1.977 GB
test-gateway 4.26.2-1.5.2-298 7376dd26db6e 2 weeks ago 2.117 GB
test-gateway 4.26.2-1.5.2-297 c84e6de5a18e 2 weeks ago 2.117 GB
test-gateway 4.26.0-1.5.2-296 e6a772c0e230 2 weeks ago 2.048 GB
test-gateway 4.24.3-1.5.2-295 d3743f5246f4 3 weeks ago 1.978 GB
test-gateway prod d3743f5246f4 3 weeks ago 1.978 GB
test-gateway 4.24.1-1.5.2-294 99065a070172 5 weeks ago 1.908 GB
test-gateway 4.24.1-1.5.2-293 90639b86573a 5 weeks ago 1.908 GB
test-gateway 4.24.1-1.5.2-292 223f8c3a41cf 5 weeks ago 1.908 GB
test-gateway 4.24.0-1.5.2-291 5646792848cf 6 weeks ago 1.873 GB
test-gateway 4.24.0-1.5.2-290 8a4e92f6a7b9 6 weeks ago 1.847 GB
test-gateway 4.24.0-1.5.2-289 475e72c8691e 6 weeks ago 1.847 GB
test-gateway 4.23.8-1.5.2-288 1c83a9f9ccc4 7 weeks ago 1.812 GB
test-gateway 4.23.8-1.5.2-287 5e77c056c703 7 weeks ago 1.812 GB
test-gateway 4.23.7-1.5.2-286 b9d9f95ec17d 7 weeks ago 1.812 GB
test-gateway 4.23.6-1.5.2-282 f40fe68c0183 8 weeks ago 1.997 GB
das folgende Skript ausführen:
#!/bin/bash
docker images | grep gateway | while read line; do
read line
echo "$line"
done;
Returns:
test-gateway staging b215d109c627 8 days ago 1.977 GB
test-gateway 4.26.2-1.5.2-298 7376dd26db6e 2 weeks ago 2.117 GB
test-gateway 4.26.0-1.5.2-296 e6a772c0e230 2 weeks ago 2.048 GB
test-gateway prod d3743f5246f4 3 weeks ago 1.978 GB
test-gateway 4.24.1-1.5.2-293 90639b86573a 5 weeks ago 1.908 GB
test-gateway 4.24.0-1.5.2-291 5646792848cf 6 weeks ago 1.873 GB
test-gateway 4.24.0-1.5.2-289 475e72c8691e 6 weeks ago 1.847 GB
test-gateway 4.23.8-1.5.2-287 5e77c056c703 7 weeks ago 1.812 GB
test-gateway 4.23.6-1.5.2-282 f40fe68c0183 8 weeks ago 1.997 GB
Warum nicht der Fall ist das Bash-Skript gibt alle übereinstimmenden Zeilen zurück?
HINWEIS: Wenn ich mir die Ausgabe ansehe, die ich sehe, scheint das Skript irgendwie Zeilen zu entfernen, in denen die Größe der Bilder gleich ist - was es noch seltsamer macht, da nichts die Ausgabe im Skript einschränkt.
nicht auf die Frage bezogen, nur zu beachten, statt Rohr, manchmal besser ist, zu schreiben: 'während lesen ... done <<(Docker Bilder | grep Gateway)' – jm666