Como fazer o comando linux sed encontrar o endereço IP do jogo

0

No meu sistema Linux, executando listdata.sh outputs:

{
  "111.111.111.111:11957": 1,
  "222.222.222.222:9999": 1,
  "333.333.333.333:9999": 1,
  "[::]:0": 1,
  "444.444.444.444:9999": 1,
  "d6iiugkkjfgt3kt2z.onion:47500": 1,
  "555.555.555.555:11957": 1,
  "666.666.666.666:9999": 1,
  "nv52misrzsuyre6.onion:47509": 1,
  "777.777.777.777:9999": 1,
  ":9999": 1,
  "[::]:0": 1
}

Se meu ip for 222.222.222.222
Eu preciso verificar quando executar o comando linux.

"some command" "222.222.222.222" "se for encontrado meu ip" não fazer nada "se não for encontrado" "fazer alguma coisa"

Lista de dados por vezes endereçada a um endereço demasiado, mostre IPv6

    
por Chonlathit Wanpean 08.03.2018 / 04:55

2 respostas

0

Para realizar ações se o seu endereço IP 222.222.222.222 não for encontrado, você pode escrever um script bash da seguinte maneira:

#!/bin/bash
listdata.sh | grep "\"222\.222\.222\.222:"  > /dev/null
if [ $? -ne 0 ]   # if grep not successful 
then
    ... do some actions
fi
    
por 08.03.2018 / 05:07
0

Obrigado @Rui F Ribeiro Estes meus scripts finais

#!/bin/bash
listdata.sh | grep "\"222.222.222.222:"  > /dev/null
if [ $? -ne 0 ]   # if grep not successful 
then
        addIPtolist.sh > /dev/null
        echo "'date -u' Not in list"  >> /var/log/listdata.log
        exit
fi
        echo "'date -u' OK Still in list"   >> /var/log/listdata.log

E esse meu loop bash

#!/bin/bash
while true
do
        listdata.sh
        sleep  60
done
    
por 08.03.2018 / 06:21