一連の数字で始まる行の一部を置き換えるように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

関連情報