Created
June 28, 2017 02:18
-
-
Save ntrepid8/d6f0fafa57a42ca1b515c19e71492309 to your computer and use it in GitHub Desktop.
Script to run speedtest-cli via cron and log the results
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
LOG_PATH="/home/$(whoami)/log/speedtest.log" | |
if result=$(/usr/bin/speedtest --simple); then | |
parsed_result=$(printf "${result}\"" | sed ':a;N;$!ba;s/\n/" /g' | sed 's/: /="/g') | |
printf "[$(date)] ${parsed_result}\n" >> "${LOG_PATH}" | |
else | |
printf "[$(date)] error\n" >> "${LOG_PATH}" | |
exit 1 | |
fi | |
exit 0 |
Hi there.
when i run the script, I have such an error.
sed: 1: ":a;N;$!ba;s/\n/" /g": unused label 'a;N;$!ba;s/\n/" /g'
If your script doesn't run and your logs (get them with sudo grep CRON /var/log/syslog
contain:
(CRON) info (No MTA installed, discarding output)
You might have to change the permissions on the script to be executable with chmod +x <name of script>
.
I got the script to work but I don't think the sed is working. I can't decipher it and not sure its intent but when I run the command without the two sed redirects it gives the same output either way. The output is dispersed across three lines instead of a nice neat one line log entry.
Thanks. Edited line 3 and 5. Working like a charm
Came in handy after changing /usr/bin/speedtest
to /usr/bin/speedtest-cli
. Thanks!
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@aausek You will need to provide an absolute path, rather than one that uses the
~
home shortcut.