누구든지 나에게 간단히 설명해 줄 수 있습니까?통사론이 순서? 이 명령의 출력을 알고 있지만 작동 방식을 이해하고 싶습니다.
실제로 명령어가 어떻게 작성되는지, 명령어에 사용된 각 문자가 무엇을 의미하는지에 대한 설명을 듣고 싶습니다.
sed -i 's|\(LAYOUT PATH \).*|\1 "../GDS/'$1'.gds"|g' drcCustimize2
답변1
sed
: 호출sed
명령-i
sed
: -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
첫 번째 일치 항목만 교체합니다.drcCustimize2
sed
:변경해야 할 파일