Wpis z mikrobloga

@Wykopowiedz: Jak coś to widzę, że ja wprowadziłem w błąd i napisałem (^| )? pierwszy. W każdym razie masz działający regex. Przetestuj tak zamiast bawić się w grepy:

$(firewall-cmd --list-ports) =~ "(^| )9000/tcp ?"
  • Odpowiedz
@Wykopowiedz: a soory. w zsh to testowałem zamiast w bashu. Musisz cudzysłów wywalić. Sprawdź tak:

test@test:~$ if [[ $(echo 9000/tcp 9128/tcp 9001/tcp 9002/tcp) =~ (^| )9128/tcp( )? ]] ; then echo 1 ; else echo 0 ;fi
1
test@test:~$ if [[ $(echo 9000/tcp 9129/tcp 9001/tcp 9002/tcp) =~ (^| )9128/tcp( )? ]] ; then echo 1 ; else echo 0
  • Odpowiedz