패턴 교체

패턴 교체

누구든지 나에게 간단히 설명해 줄 수 있습니까?통사론이 순서? 이 명령의 출력을 알고 있지만 작동 방식을 이해하고 싶습니다.

실제로 명령어가 어떻게 작성되는지, 명령어에 사용된 각 문자가 무엇을 의미하는지에 대한 설명을 듣고 싶습니다.

sed -i 's|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g' drcCustimize2 

답변1

  • sed: 호출 sed명령
  • -ised: -i 옵션 전달 : 파일을 그 자리에서 수정합니다.
  • 's|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g': '...'$1'..'은 전체 섹션을 명령의 sed매개변수 로 만드는 데 사용됩니다.
  • s|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g:
    • s|pattern|replacement|options: s는 바꾸기(또는 검색 및 바꾸기) 명령입니다. 이러한 |문자는 명령의 일부를 서로 구분하는 데 사용됩니다.
    • \(LAYOUT PATH \): 리터럴 문자열 "LAYOUT PATH"를 검색하고 이를 그룹으로 캡처합니다. 다음을 사용하여 그룹의 내용을 대체 문자열에 넣을 수 있습니다.\1
    • .*: 줄 끝까지 모두 일치합니다.
    • \1:일치하는 그룹 1을 대체 텍스트에 넣습니다.
    • "../GDS/"../GDS/: 대체 텍스트 에 리터럴 문자열을 넣습니다.
    • $1: 대체 텍스트에 쉘 스크립트의 첫 번째 매개변수를 넣습니다.
    • .gds".gds": 대체 문자열에 리터럴 문자열을 넣습니다.
    • g:한 줄의 모든 일치 항목을 교체합니다. 없으면 g첫 번째 일치 항목만 교체합니다.
    • drcCustimize2sed:변경해야 할 파일

관련 정보