xmllint を使用して一連の XML を検証しようとしています。
コマンドを使用します: xmllint --noout --schema MySchema.xsd dir/*.xml
これにより、各ファイルのリストと、それが検証されたか失敗したかが stdout に出力されます。このリストを削除して、検証に失敗したファイルのみを表示したいと考えています。
結果をフィルタリングするために stdout でパイプ grep を実行できることに慣れています。たとえば、ls | を実行すると、grep "config" は、名前に config が含まれるファイルのみを一覧表示します。
しかし、何らかの理由で、上記のコマンドの後に | を実行します。grep "失敗" または | grep -v "validates" は、コンソールの stdout にスローされる (大量の) テキスト行数の削減にはまったく効果がありません。完全なリストは関係なく表示されます
xmllint からの出力がパイプの有効な入力ではないかのようです。