次の内容を含むテキストファイルがあります。
number of apples 7
シェルスクリプトを実行し、任意の値(例:5回繰り返し)で数字を変更したいと思います。したがって、次のような出力が必要です。
number of apples 7
number of apples 8
number of apples 1
number of apples 5
number of apples 4
sedコマンドを使ってみました。
sed -i 's/Number of apples 7/Number of apples '$((1 + RANDOM % 9))'/g' fruits.txt
繰り返し2で新しい番号を自動的に検出して修正するにはどうすればよいですか?
答え1
範囲の正規表現は角かっことハイフンです。したがって、[1-9]
1から9までの数字が一致します。
つまり、sed
コードは次のように変更されます。
's/Number of apples [1-9]/Number of apples '$((1 + RANDOM % 9))'/g'