나는라는 이름의 파일이 있습니다 출력의탈출 "("와 " '"는 AWK의 -v의 FS 인수에
#!/bin/bash
outputFile=output.txt
while read line
do
stringLine=$line
echo $stringLine | awk -v FS='(include|string)' '{print $2}'
done < $outputFile
샘플 내용 : 나는 다음 코드 라인으로 라인을 읽을 수있는 경우 output.txt를 이 .txt입니다
sometext:include('js/jquery.ui.totop.js');
sometext:include('js/jquery.mousewheel.min.js');
내가 "('및 포함"사이의 문자열을 추출하고 싶습니다 "');" 을하지만 난 "('"로 탈출하려고하면
echo $stringLine | awk -v FS="(include\(\'|string)" '{print $2}
그것은 다음 오류를 반환
awk: illegal primary in regular expression (include(|string) at string)
input record number 1, file
source line number 1
당신은 내가 (그리고 '는 FS 인수에 탈출 할 수있는 방법에 대해 어떤 생각을 가지고 있습니까?
예, 그것은 완벽하게 작동 : 는'includeFile = $' (에코 $ stringLine가 | '{$ 2 인쇄}'| AWK -v FS =이 "\\\) ''(\\\ 포함") 그게 마지막 줄 이었어 – user3709081
awk -v FS = "include \\\ ('|'\\\)" '{print $ 2}'<<< "$ stringLine"' –