LoginSignup
2
2

More than 5 years have passed since last update.

sedコマンドで正規表現を置換する

Last updated at Posted at 2018-01-14

sedコマンド

bashにはファイル内の文字列を置換できるsedコマンドがある.
しかし,正規表現の文字列を置換する場合には少々厄介だ.
備忘録として正規表現の置換方法をまとめておく.

コマンドの前に

テスト用に以下のスクリプトを用意してみた.

test.c
#include<stdio.h>

int main(void){

        char *filename = "tonarino/kyakuha/yokukaki/kuukyakuda";

        return 0;
}

スクリプト中のtonarino/kyakuha/yokukaki/kuukyakudanamamugi/namagome/namatamagoに置換したいとする.

%で区切る

上記の置換をsedコマンドで行いたい場合,対象の文字列を%で区切ることで置換可能となる.

sed -i -e 's%tonarino/kyakuha/yokukaki/kuukyakuda%namamugi/namagome/namatamago%g' *

これで置換できる.

test.c
#include<stdio.h>

int main(void){

        char *filename = "namamugi/namagome/namatamago";

        return 0;
}

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2