フォルダ内の複数のファイルを繰り返し、値を割り当てます。

フォルダ内の複数のファイルを繰り返し、値を割り当てます。

などの複数のファイルをMyProperties含むフォルダがあります。各ファイルには、次のような内容が含まれています。.properties1.properties2.properties3.properties

keyname=value 

割り当てまたは置換できるように、プロパティファイルの値としてここに何を書く必要がありますか?これをどのように繰り返し、bashスクリプトのキーに値を割り当てることができますか?

擬似コード:

#!/bin/bash
valuetobepassed="something"
#iterate over each file in the folder and replace/assign value corresponding to keyname

ベストアンサー1

sed以下を使用してファイルの値を変更できます。

#!/bin/bash

new_value=5
for f_name in MyProperties/*.properties; do
     sed -i "s/^keyname=.*$/keyname=$new_value/" "$f_name"
done

おすすめ記事