assert_equalを使用し、amazonを使用しないすべての行が必要です。
フォローしてみましたが、動作しません。
ack assert_equal | xargs ack -v amazon
xargsは必要ありません:
ack assert_equal | ack -v amazon
コマンドにいくつか問題があるようです。最初の部分で:
ack assert_equal
ファイル名を指定しないため、ack
処理するものはありません。第二部では:
xargs ack -v amazon
xargs
最初のack
引数から2番目の引数へのコマンドライン引数としての結果を提供するために使用していますがack
、これはおそらく意図したものではありません。 ack
はすでに標準入力のデータを受け入れるように設計されているため、使用する必要はまったくありませんxargs
。
これは、より適切に機能するはずのステートメントです。
ack assert_equal filename | ack-vアマゾン
または、別のコマンドから出力を取得している場合は、次のようになります。
my_command | ack assert_equal | ack-vアマゾン
ack
*nixの標準ツールではありません。あなたがそれを持っているので、それは大丈夫です。しかし、それがない* nixシステムを使用している場合は、次の方法で実行できます。
awk '/assert_equal/&&!/amazon/' file
このスニペットは、あなたが何をする必要があるかについてのアイデアをあなたに与えるはずです。魔法は-print0オプションにあります。直接的な解決策ではありません。怠け者です。
ack -f --print0 --php -G 'scripts' --invert-file-match|xargs -0 ls -l