Redhat 5.9에서 grep의 행 번호 출력을 제거하십시오.


1

지금까지 RH 5.9를 사용하지 않았습니다. 6으로 시작했지만 5.9 대의 서버가 있습니다. 5.9의 구문은 약간 다른 점이 있습니다. 예를 들어 grep은 실제 검색 전에 숫자 라인을 출력합니다. 다음은 그 예입니다.

grep john /etc/shadow
38:john:!$1$/LW9cOmI$.QidFjJmq5xjKfmKugLAy0:16311:0:99999:7:::

38 줄 번호입니다. RH 6에서는 이것이 수정되었습니다. 우리는 grep (GNU grep) 2.5.1을 사용하고 있습니다. 그렇다면 sysadmin이 grep을 업데이트하지 않을 것입니다. 그러나 해결 방법이 있는지 알고 싶습니다. RH 6의 grep에 익숙합니다. 문제가되는 것은 내가 이런 일을 할 때 실제로 잘못된 필드이기 때문입니다.

cat /etc/shadow |grep john | awk -F: '{print $2}'
john

실제로 필드 2는 암호 필드를 나타내야합니다. grep에이 번호 줄을 비활성화하는 옵션이 있습니까? 나는 아직 내 대답을 찾지 못했다. 감사.


3
별칭으로 설정되지 않았습니까? grep -n 줄 번호를 표시하는 일반 명령입니까? 유형 alias 목록에 있는지 확인하십시오.
garethTheRed

실행 해보기 \grep john /etc/shadow. 미리 정의 된 인수없이 명령을 실행합니다. 작동한다면 별명을보고 grep에서 별명에서 -n 플래그를 제거하십시오.
nisargjhaveri

나는 aliases와 \ grep 명령을 살펴 보았고 아직 그것으로부터 좋은 것은 아무것도 없다.
unixpipe

다음의 결과는 무엇입니까? alias?
ernie

1
ls, ll, vi 및 which 명령, grep 없음
unixpipe

답변:


2

GREP_OPTIONS 환경 변수를 점검하십시오.

다음과 같이 다시 시도해도 아무 것도 설정하지 마십시오.

GREP_OPTIONS=''
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.