그 앞에 "#"이 없는 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