0

sedLinuxで使用しています。私はほとんどの仕事をしましたが、これについて助けが必要です: パターンの一部は次のようなものです:

document=SomeRanddomAlphaNumeric/10DigitNumber, user=

いくつかの例:

私は見つけることを期待しています:

ducument=LKJHuasfb89/9878476578, user=
ducument=jhdn uryhf 9adu/6767898893, user=
ducument=iujjnbmr Ohndj88isju/6767898734, user=

そしてそれらを次のようにします:

ducument=replacetext, user=
ducument=replacetext, user=
ducument=replacetext, user=

これをsedコマンドとして使用しています:

$ sed -i 's/regex/replacetext/g' $file.txt

テキストの置換は一定ですが、上記のコマンドには正規表現が必要です。

4

3 に答える 3

1

これはうまくいくでしょう、

sed  's/\(ducument=\)\([^,]\+\)/\1replacetext/g'  file
于 2013-08-21T06:38:16.303 に答える
1

前のテキストにスラッシュ文字 ( ) が含まれていない場合は/、次のように 10 桁のシーケンスを照合できます。

sed 's|\(ducument=[^/]*/\)[0-9]\{10\}|\1replacetext|' infile
于 2013-08-21T06:33:24.737 に答える
1

この sed は動作するはずです:

sed -i.bak 's/^\(document=\)[^,]*/\1replacetext/' file
于 2013-08-21T06:33:30.100 に答える