0

192.168.1.2 から 192.168.1.x (x は 3 ~ 254 の値) のように、ルール内のいくつかの数値を変更する必要があります。したがって、値が 192.168.1.2 の行、値が 192.168.1.3 の行など、複数の行があります。まあ、私はそれを行う方法がわかりません。Linuxでスクリプトを使用するプログラムまたは何らかの方法を知っている人がいたら、教えてください。

4

2 に答える 2

1

を使用する 1 つの方法を次に示しGNU sedます。X使用したい値に置き換えるだけです。

sed 's/\(\([0-9]\{1,3\}\.\)\{3\}\)[0-9]\{1,3\}/\1X/g' file.txt

テスト:

echo "192.168.1.4" | sed 's/\(\([0-9]\{1,3\}\.\)\{3\}\)[0-9]\{1,3\}/\1X/g'

結果:

192.168.1.X
于 2012-10-26T13:57:26.497 に答える
1

毛むくじゃらの正規表現ルートを回避するために使用する別のオプションawk(一般的に正規表現に問題はありませんが、時には目が出血する可能性があります...):

awk -F. '{printf "%s.%s.%s.x\n",$1,$2,$3}'
于 2012-10-26T14:31:21.167 に答える