if 문에서 부울 표현식을 사용합니까?

if 문에서 부울 표현식을 사용합니까?

if then 문을 작성하고 싶습니다. 변수 i가 0부터 9까지의 정규식과 같고 grep이 어떤 결과도 반환하지 않으면 뭔가를 하십시오. 이것이 올바른 구문입니까?

if [[ $i =~ [0-9] ]] && if ! grep $i /opt/tftpboot/*; then

아니면 그럴까?

if [[ $i =~ [0-9] ]] && ! [[ grep $i /opt/tftpboot/* ]]; then

답변1

그것은:

if [[ $i =~ [0-9] ]] && ! grep $i /opt/tftpboot/*; then

아마도 의 출력이 필요하지 않을 것입니다 grep. 이 경우 다음을 수행할 수 있습니다.

if [[ $i =~ [0-9] ]] && ! grep -q $i /opt/tftpboot/*; then

관련 정보