그래서 명령줄에서 2개의 문자열과 파일 이름을 전달하고 파일에서 이 두 문자열을 검색하고 싶습니다. 입력 예: script.sh file.txt AB 78
출력 예:001,AB,cse,78
(파일에 이 줄과 일치하지 않는 다른 줄이 있는 경우)
내 시도:
`#/usr/bin/env bash`
`grep '$2.*$3\|$3.*$2' $1`
그러나 이것은 작동하지 않습니다. 누구든지 도와줄 수 있나요?
답변1
$2
검색 문자열을 허용 하고 $3
확장하려면 작은따옴표를 큰따옴표로 변경해야 합니다 .
#/usr/bin/env bash
grep "$2.*$3\|$3.*$2" $1
더 나은 설명은 다음과 같습니다.