더 이상 사용되지 않는 egrep 및 fgrep 명령의 가용성

더 이상 사용되지 않는 egrep 및 fgrep 명령의 가용성

기술적으로 더 이상 사용되지 않음에도 불구하고 답변에서 egrepis grep -E또는 fgrepis를 언급하고 grep -F답변에 egrepor 을 사용하는 경우가 종종 있습니다 .fgrep

그래서 명령 세트 간에 이런 종류의 연결을 제공하지 않는 현대적인 유닉스 계열 시스템의 구체적인 예가 있는지 궁금합니다. 예를 들어, GNU grep 매뉴얼에는 다음이 포함되어 있습니다.

또한 두 가지 변형 프로그램 egrep 및 fgrep을 사용할 수 있습니다. egrep은 "grep -E"와 동일합니다. fgrep은 "grep -F"와 동일합니다. egrep 또는 fgrep을 사용한 직접 호출은 더 이상 사용되지 않지만 이에 의존하는 기록 애플리케이션이 수정 없이 실행될 수 있도록 제공됩니다.

그리고 FreeBSD는

또한 두 가지 변형 프로그램 egrep 및 fgrep을 사용할 수 있습니다. egrep은 grep -E와 동일합니다. fgrep은 grep -F와 동일합니다.

egrep스크립트가 내일 또는 제거될 수 있더라도 모든 곳에서 반드시 작동하는 것은 아니라는 점을 아는 것이 좋습니다 .fgrep

답변1

명확한 시스템은 없는 것 같아요아니요그런 것들이 있습니다(하지만 지금 당장 살펴볼 최신 상용 UNIX 시스템은 없고 오픈 소스 시스템만 있습니다). 하지만 grep적절한 옵션을 사용하여 호출되는 일반 스텁인 시스템도 꽤 많이 있습니다.

예를 들어, Gentoo Linux에서 /bin/egrep쉘 스크립트는 다음과 같습니다:

#!/bin/sh
exec grep -E "$@"

그리고 /bin/fgrep그것은 본질적으로 동일합니다. 또한 egrep과 가 fgrep단지 심볼릭 링크나 하드 링크인 시스템도 본 적이 있지만 grep둘 다 존재하지 않는 시스템은 본 적이 없습니다.

그러나 더 이상 사용되지 않지만 조만간 사라지지 않을 것이 egrep거의 fgrep확실합니다. 내 노트북(Gentoo Linux 실행)에서 스크립트를 빠르게 스캔하면 /usrPython 및 GCC와 같은 유비쿼터스 항목을 포함하여 스크립트를 사용하는 수십 개의 패키지가 드러납니다.

이 모든 것을 고려하면 아이러니하게도 옵션 대신 더 이상 사용되지 않는 명령을 사용하는 코드는 실제로는옵션을 사용하는 코드는 이전 시스템에서 실행되므로 옵션을 사용하는 코드보다 이식성이 더 뛰어나지만 옵션을 사용하는 코드는 그렇지 않습니다.

관련 정보