プロフィールのコンバージョン値を毎日+1ずつ増やします。

プロフィールのコンバージョン値を毎日+1ずつ増やします。

毎日追加する必要がある構成ファイルがあります。

例えば

report.lookback.days.to.retrieve.data=60

ファイルには、異なる値を含む上記の項目など、複数の項目が含まれています。プロパティファイルを開き、この特定のアイテムを検索したら、合計30日間毎日+1ずつ値を増やす必要があります。

例えば

report.lookback.days.to.retrieve.data=61

report.lookback.days.to.retrieve.data=62

report.lookback.days.to.retrieve.data=63

私はスクリプトに初めて触れましたが、これを行うためにどのような方法を使用できるのかわかりません。

awk、sed、カウンタの実装、またはメソッドの組み合わせを使用する必要がありますか?

ベストアンサー1

自分が投稿したファイルと同様のファイルのみを編集するには、次の方法を使用します。

perl -i  -pe 's/report.lookback.days.to.retrieve.data=\K\d+/$&+1/e' file

説明する

-i内部編集を有効にすると、変更内容が元のファイルに保存されます。-pつまり、「-eで指定されたスクリプトを実行した後に各行を印刷します」/

s///代替演算子で、次のように動作しますs/source/replacement

report.lookback.days.to.retrieve.data=使用される正規表現は、文字列(\d+)の後に1つ以上の数字が続くものを見つけることです。\K以前の一致を削除し$&(一致したばかりの項目を保持する特殊変数)、数値のみを指すことを許可します。

$&+1最後に、一致する値に1を足したものに置き換えます。これ(s///評価演算子内部のもの)はs///e最後にあるフラグによって有効になりますs///e

おすすめ記事