특정 문자열 다음을 원하는 값으로 변경하기

GodokNam   
   조회 4277   추천 0    

리눅스 shell(bash)을 이용하여 특정 문자열을 바꾸고 있는데요..

현재는 다음과 같이 변경하고 있는데..

sed -i 's/AAAA=200/AAAA=100/g' temp/temp.ini
sed -i 's/AAAA=300/AAAA=100/g' temp/temp.ini
sed -i 's/AAAA=500/AAAA=100/g' temp/temp.ini

temp.ini 파일안에 AAAA= 항목을 원하는 값으로 변경하고 싶습니다.

현재는 200, 300, 500일 경우만 찾아서 원하는 값 100으로 변경하고 있는데요..

200,300,500 아니고 랜덤일 경우 변경하는 방법이 따로 있는지 궁금합니다.


짧은글 일수록 신중하게.
무아 2015-09
정규식을 써서 넣으면 될 것 같은데요.

sed -i 's/AAAA=[0-9]00/AAAA=100/g' temp/temp.ini

뭐.. 이런식으로요.

또는 숫자 범위가 단 단위 까지 간다면 이런식도..
sed -i 's/AAAA=\d\d\d/AAAA=100/g' temp/temp.ini
     
GodokNam 2015-09
감사합니다.. 잘 됩니다.. ^^
블랙커피 2015-09
gnu bre/ere에서 \d shorthand 표기법을 사용할 수 없습니다.
[:digit:] [:alnum:] 같은 gnu 확장표기법을 사용하거나 [0-9] 처럼 문자클래스 표기법을 사용하는 방법이 있고요.
AAAA 이후의 값이 숫자인지, 혹은 숫자+문자인지를 명확히 하셔야 합니다.

sed -i 's/^\(AAAA=\)[0-9]\+/\1100/' temp.ini
sed -i 's/^\(AAAA=\).*/\1100/' temp.ini
     
GodokNam 2015-09
무아님이 갈켜준 방법대로 소기의 목적을 달성하였습니다. 감사합니다..


QnA
제목Page 2715/5730
2015-12   1791797   백메가
2014-05   5266864   정은준1
2015-07   4249   jack33
2021-05   3306   마법사오즈
2024-08   1185   dateno1
2012-03   5452   농구황제
2014-04   4400   엄청난x
2016-08   4742   장현재
2021-05   4707   bangCH
2016-08   5330   박철
2017-09   4033   전직P연구원
2020-01   6375   돈대신몸으로
2014-04   3382   HEUo김용민
2015-08   9393   moby
2016-08   3942   그파
2023-01   1782   주먹밥
2021-05   4253   디지유
2024-09   1358   레나
2015-08   14025   전설속의미…
2015-08   5702   겨울나무
2020-02   4058   나의정체는
2024-09   1228   쌍cpu