Übergeben Sie die Befehlsausgabe als Argument in grep

659
Michail N

Ich möchte zwei Textdateien zeilenweise auf Änderungen vergleichen. Wenn die Dateien lokal gespeichert werden, weiß ich, dass ich das mit machen kann

grep -Fxvf file1 file2 

Ich habe ein Problem, da sich Datei 2 im Hadoop-Dateisystem befindet. Ich kann diese Datei mit dem Befehl lesen

hadoop fs -cat /filepath/file2 

Ich möchte dieses Ergebnis natürlich an grep weitergeben. Ich habe so etwas ausprobiert

 grep -Fxvf file1 $ 

aber ich verstehe

-bash: $ : fehlerhafte Ersetzung

Ich habe auch versucht, xargs zu verwenden, aber ohne Glück. Ich freue mich über jede Hilfe.

0
Siehe https://serverfault.com/a/40291. dsstorefile1 vor 5 Jahren 2

1 Antwort auf die Frage

2
Michail N

Dank @dsstorefile1 habe ich es mit gelöst

grep -Fxvf <(hadoop fs -cat /fielpath/file2 ) file1