指定された文字列から始まり、指定された文字まで削除します。

指定された文字列から始まり、指定された文字まで削除します。
root@server:~/foo$ cat INPUT.txt
limit. Current u'^'ZO
limit. Current usage'^'FR
limit. Current us'^'AS
limit. Current usage 95 %.'^'FR
limit. Cur'^'AEW
root@server:~/foo$ sed "s/limit.SOMEMAGIC/limit./g" INPUT.txt
limit.'^'ZO
limit.'^'FR
limit.'^'AS
limit.'^'FR
limit.'^'AEW

質問:"limit" ("Cur...") の後にある文字列をどのように削除できますか?まで: " ' " ? 「SOMEMAGIC」を検索してみてください:)

ベストアンサー1

あなたはそれを使用することができます:

sed -e "s/^\(limit\.\)[^']*/\1/" < data

これはlimit.行の先頭に一致し、その後にできるだけ多くの文字が続きます。それじゃない'\1、()で始まる部分のみを交換してください。データが実際にどのように見えるかによって、スキーマと代替項目を編集できます。重要な部分はです[^']*

おすすめ記事