파일이 있습니다. 슬래시로 시작하지 않고 www.
슬래시를 포함하지 않는 줄을 선택하고 싶습니다. 결과를 출력하고 싶습니다.result.txt
첫 번째 요구 사항을 충족하려면 다음을 수행하세요.
grep -v '^www\.' myfile.txt > result.txt
.
두 번째 목표를 달성하기 위해 result.txt를 가져와서 실행합니다.
grep -v '/' result.txt > result2.txt
파일에서 여러 명령을 실행하고 결과를 하나의 출력 파일에 저장하는 더 나은 바로 가기가 있습니까?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