試行錯誤の結果
上のが中途半端に何書いてるか分からない状態だったのでもう少し落ち着いて書きなおした。expectのところにパイプを繋げてみた。あとはdiffして切り貼り。落ち着いた。
#!/bin/sh expect << EOS | tr -d '[\r\000]' | tr -s '\n' | grep -E "^[0-9]{2}([0-9]{2}/?){3}" > ~/tmp/router_new.log spawn telnet 192.168.62.1 expect login send -- "admin\r\n" expect "Password: " send -- "yourpassword\r\n" expect ">" send -- "show log sys\r\n" expect "\r\n\r\n\r\n" send -- "exit\r\n" EOS \diff ~/tmp/router{_new,}.log \ | sed -e "/^[^<]/d" -e "s/^< //g" >~/tmp/router_diff.log #| grep "^<" | cut -d" " -f2- > ~/tmp/router_diff.log cat ~/tmp/router_diff.log >>~/tmp/router.log