Warum den Code 141 mit grep -q verlassen?
Kann jemand erklären, warum ich den folgenden Beendigungscode 141 erhalte?
#!/usr/bin/bash
set -o pipefail
zfs list | grep tank
echo a ${PIPESTATUS[@]}
zfs list | grep -q tank
echo b ${PIPESTATUS[@]}
cat /etc/passwd | grep -q root
echo c ${PIPESTATUS[@]}
Ich bekomme
...
a 0 0
b 141 0
c 0 0
Nach meinem Verständnis ist der Exit-Code 141 ein Fehler, aber die obige Zeile gibt Null an, also sollte es Erfolg haben, würde ich sagen.