일련의 숫자로 시작하는 줄의 일부를 대체하도록 sed를 얻는 방법

일련의 숫자로 시작하는 줄의 일부를 대체하도록 sed를 얻는 방법

다음 줄을 다음과 같이 변경하기 위해 sed 또는 Perl을 얻으려면 어떻게 해야 합니까?

41 * * * * /vend/oracle/util/bin/rmp_udump.ksh

도착하다:

##SHUTDOWN_MAINT##41 * * * /vend/oracle/util/bin

[0-9]로 시작하는 모든 줄에 해당됩니다. vi에서는 다음과 같이 작동합니다.

%s/^[0-9].*/##SHUTDOWN_MAINT##&/

답변1

vi귀하의 명령 에 해당하는 경우 다음과 같습니다 perl.

perl -pi -e 's/^\d/##SHUTDOWN_MAINT##$&/' your-file

또는:

perl -pi -e 's/^(?=\d)/##SHUTDOWN_MAINT##/' your-file

또는:

perl -pi -e '$_ = "##SHUTDOWN_MAINT##$_" if /^\d/' your-file

관련 정보