앞에 "#"이 없이 MYSTRING이 포함된 모든 파일을 찾아야 합니다.
예를 들어, 같은 줄에서 MYSTRING 앞에 "#"이 나타나므로 FALSE를 반환해야 합니다.
a=1 # otherstring MYSTRING
그러면 TRUE가 반환되어야 합니다.
# another line above is commented but that's not on the same line
a=1; MYSTRING
비슷한 질문을 확인했지만 정확히 같은 상황을 찾을 수 없습니다.
답변1
넌 할 수있어:
grep '^[^#]*MYSTRING' file.txt
^[^#]*MYSTRING
즉 , 포함 줄과 일치할#
때 까지 시작부터 끝까지 모든 수의 문자와 일치 하지만 해당 줄 이전에는 일치하지 않습니다.MYSTRING
MYSTRING
#
예:
% cat file.txt
# another line above is commented but that's not on the same line
a=1; MYSTRING
a=1 # otherstring MYSTRING
% grep '^[^#]*MYSTRING' file.txt
a=1; MYSTRING