기술적으로 더 이상 사용되지 않음에도 불구하고 답변에서 egrep
is grep -E
또는 fgrep
is를 언급하고 grep -F
답변에 egrep
or 을 사용하는 경우가 종종 있습니다 .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 실행)에서 스크립트를 빠르게 스캔하면 /usr
Python 및 GCC와 같은 유비쿼터스 항목을 포함하여 스크립트를 사용하는 수십 개의 패키지가 드러납니다.
이 모든 것을 고려하면 아이러니하게도 옵션 대신 더 이상 사용되지 않는 명령을 사용하는 코드는 실제로는더옵션을 사용하는 코드는 이전 시스템에서 실행되므로 옵션을 사용하는 코드보다 이식성이 더 뛰어나지만 옵션을 사용하는 코드는 그렇지 않습니다.