을 GSUB이 줄이 있습니다 : $의 선두로부터 및 내 경우이스케이프 백 슬래시 AWK를 사용하고 난 그 수정할 수 없습니다 기존의 기능이 내 프로젝트에서
gawk -v n=$OCCURENCE "/$OLD/$EXTRA{gsub(\"$OLD\",\"$NEW\")}1" $FILE_TO_AWK
을 $ 추가, 그것은 제공 :
다른 패턴 "200 \"(기존 $) \ 반환 코드 =gawk -v n=- "/$OLD/{gsub(\"$OLD\",\"$NEW\")}1" $FILE_TO_AWK
지금 여기에 내가이 패턴을 대체하려고 내가 과 사투를 벌인거야 부분입니다. 나는 많은 것을 시도해 왔지만 백 슬래시와 큰 따옴표 때문에 계속 실패하고있다.
내가있는 경우 :이 같은 것들을 시도
[12/12/2014 12/34] 123 /url/test.gsp 500 12234
:
[12/12/2014 12/34] 123 /url/test.gsp ReturnCode=\"500\" 12234
내가 이것을 가지고 싶어 할 것이라 이 gawk -v n=- "/ReturnCode=\\\"500\\\"/{gsub(\"ReturnCode=\\\"500\\\"\",\"500\")}1" fichier.txt
그것은 진수 코드를 사용
를 작동하지 않았다 042는 큰 따옴표로 작업했지만 백 슬래시는 사용하지 않았습니다 ... 도와 주시면 고맙겠습니다. 아이디어가 없습니다. 고마워!
확실하지 :
하지만 실제로 생각은 "나오지도"리턴 코드를 유지하기 위해 캡처 표현으로,이 작업을위한 더 나은 도구가 될 수 있습니다 큰 따옴표'''와 백 슬래시는 특별한 정규 표현식 문자이므로 앞에서 백 슬래시를 넣음으로써 이스케이프해야합니다. 따라서 패턴은'\\\ "200 \"\\ " – streetturtle
이됩니다. $ NEW에 사용하는 값은 무엇입니까? – piojo
아니요, $ new는 문제가되지 않습니다. ReturnCode = \ "200 \"이 $ old 인 것으로 알고 있습니다. 그 \와 "는 스페셜 캐처 맨임을 알고 있습니다. 나는 그들을 탈출하려고했습니다. 성공하지 않고 –