![매개변수가 있는 grep -E가 작동하지 않습니다.](https://linux55.com/image/82493/%EB%A7%A4%EA%B0%9C%EB%B3%80%EC%88%98%EA%B0%80%20%EC%9E%88%EB%8A%94%20grep%20-E%EA%B0%80%20%EC%9E%91%EB%8F%99%ED%95%98%EC%A7%80%20%EC%95%8A%EC%8A%B5%EB%8B%88%EB%8B%A4..png)
스크립트의 옵션을 사용하면 -E
사용자 변수를 사용할 수 없습니다. grep
예를 들어:
txt 파일:
word
nir asd b asd
text
스크립트:
#!/bin/bash
PARAM=b
cat txt | grep -E 'nir.*${PARAM}'
스크립트는 아무것도 반환하지 않습니다. -E
옵션을 사용하면 어떻게든 변수를 이스케이프 처리해야 한다고 생각합니다 .
답변1
PARAM=b
grep -E "nir.*${PARAM}" txt
또는
grep -E 'nir.*'"${PARAM}" txt