На питоне это гораздо навороченнее выглядит чем на баше:
import sys
import MySQLdb
conn = MySQLdb.connect(host= "localhost",
user="root",
passwd="scaner",
db="scaner")
x = conn.cursor()
for line in sys.stdin:
line = line.replace('\n', '')
try:
x.execute("""INSERT INTO ping(ip) VALUES (%s)""",(line,))
conn.commit()
except:
conn.rollback()
conn.close()
Тут я из входного потока читаю и в таблицу вставляю с коммитом по каждой строке.
С.но запускать надо так (питоновский код записан в файл stdin2mysql.py):
fping -a -q -i $3 -r 1 -g $1 $2 | python3 stdin2mysql.py