ssed -R 및 perl -pe

ssed -R 및 perl -pe

Perl 스타일의 정규식을 사용하는 sed를 원한다면 두 가지 방법이 있는 것 같습니다:

ssed -R
perl -pe

이 목적을 위해 다른 도구보다 특정 도구를 선호하는 이유가 있습니까? 그들은 모두 -i 플래그를 지원합니다. 나는 그들이 동일한 Perl 정규식 라이브러리를 사용한다고 가정하고 있으므로 아마도 비슷한 성능과 동일한 기능 및 버그가 있을 것입니다. 최신 UNIX 시스템에 Perl을 설치하지 않는 것은 특이한 것 같습니다.

답변1

ssed바이너리보다 훨씬 작습니다 perl. /usr/bin/ssed123K, PCRE 정적 링크입니다. /usr/bin/perl1.7M이며 함께 설치된 표준 모듈은 포함되지 않습니다.

ssed소규모 배포판이나 복구/설치 프로그램 ISO에 설치할 수 있지만 perl설치되지 않을 수 있습니다. 하지만 PCRE는 대부분 단지 편의를 위한 것이므로 이를 확인하기는 어렵습니다. 일반 기본 또는 확장 정규식은 sed너무 많은 추가 작업 없이 PCRE가 수행하는 작업의 대부분을 수행할 수 있으며, 이는 또 다른 123K 공간을 절약할 수 있습니다.

덜 중요한 것은 적어도 시작 오버헤드 측면에서는 ssed더 빠르다는 것입니다 . 스크립트 perl컴파일 perl은 빠르지 않습니다. 이는 ssed 또는 perl을 반복적으로 호출하는 for/while 루프가 있는 쉘 스크립트에서만 의미가 있을 수 있습니다.

관련 정보