Home > Back-end >  Post username and password to URL from a sh script
Post username and password to URL from a sh script

Time:09-11

I need to create a batch sript to check if Internet is responding. If is responding then do nothing, but if no responding then post usernname and password to a URL. Bellow and example that I want to do, I know that the script is wrong and is for this rason that I am asking for help.

#!/bin/sh
if ping -c 1 8.8.8.8 &> /dev/null 
then 
 do={/tool fetch http-method=post http-data="username=myuser&&password=mypass" url="https://secure.etecsa.net:8443//LoginServlet" }
else 
echo 0 
fi

CodePudding user response:

ping -c 1 8.8.8.8 &> /dev/null will return 0 if the ping is successful. 0 is FALSE, so the then block will not run. You need to swap your then and else blocks. There are other issues with the script, but this should answer you question.

CodePudding user response:

You can use curl to post your message:

#!/bin/bash

######################################################################
# Script Configuration
######################################################################
TARGET_URL="https://secure.etecsa.net:8443/LoginServlet"

# Set the internet server to be verified (Change this as needed)
VERIFICATION_SERVER="8.8.8.8"

# Verification Timeout (seconds)
VERIFICATION_TIMEOUT_IN_SECONDS=1

# User Data
data="username=myuser&&password=mypass"

# Checks if internet is reachable
ping -c 1 -W ${VERIFICATION_TIMEOUT_IN_SECONDS} ${VERIFICATION_SERVER} &> /dev/null

if [[ $? -ne 0 ]]; then
  # Internet not detected,
  # post username and password to URL
  echo curl --insecure -X POST ${TARGET_URL} -d "${data}"
else
  # Internet active
  echo "Internet is active."
fi
  • Related