![同じファイルで2つのgrepコマンドを実行するには? [コピー]](https://linux33.com/image/138778/%E5%90%8C%E3%81%98%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A72%E3%81%A4%E3%81%AEgrep%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%EF%BC%9F%20%5B%E3%82%B3%E3%83%94%E3%83%BC%5D.png)
ファイルがあります。スラッシュで始まらず、www.
スラッシュを含まない行を選択したいと思います。結果を出力したいです。result.txt
最初の要件を満たすには、次の手順を実行します。
grep -v '^www\.' myfile.txt > result.txt
。
2番目の目標を達成するためにresult.txtを取得して実行します。
grep -v '/' result.txt > result2.txt
ファイルから複数のコマンドを実行し、結果を1つの出力ファイルに保存するためのより良いショートカットはありますか?result.txt
|
左側のコマンドの出力が|
右側のコマンドの入力となる複数のコマンドを実行したいことを知っています|
。私が知らないのは、grepや他のコマンドを使用する場合、|
つまり次のようにする必要があるということです。
grep -v '^www\.' myfile.txt | grep -v '/' > result.txt
または
grep -v '^www\.' myfile.txt | grep -v '/' mfile.txt > result.txt
答え1
grep -v -e '^www\.' -e '/' myfile.txt > result.txt
答え2
パイプの使用について心配しないでください。 Alexanderの答えは最も素晴らしく純粋ですが、最初に最良の公式を探している場合は、使用するいくつかの手順があります。
head file |grep 'first-condition' |grep 'next-conditon'
::概要を提供しますcat file |grep 'first-condition' |grep 'next-conditon' |wc -l
:: 金額を教えてくださいgrep --color 'complex-condition'
:: 実際の選択を強調
最後のステップでは、次のような非常に複雑な正規表現を作成できます。
egrep -v '(^www\.)|(/)' myfile.txt > result.txt
時には、他の文字列解析コマンドなどを使用する必要がある場合は、awk
パイプを使用するのが非常に便利です。sed
cut