Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Scripting question
2018-10-18, 01:13
Post: #1
Scripting question
I have following script:

set attempt:int32 0
set maxtries:int32 5
:retry_dhcp
sleep 5
inc attempt
iseq ${attempt} ${maxtries} && goto max_attempts ||
echo DHCP Attempt ${attempt} of ${maxtries}
dhcp || goto retry_dhcp
.....

max_attempts:
....

The values of maxtries and attempt are displayed with expected values by the echo statement. But the attempt equals 5 the script does got to max_attempts.

I tried iseq ${attempt} 5 && goto mac_attempts first but that did not work either.

What is the recommend way to test two numeric values .
Find all posts by this user
Quote this message in a reply
2018-10-18, 03:40
Post: #2
RE: Scripting question
The good news is your code is working. The problem is that the dhcp command is broad statement to test for. I would recommend using "dhcp net0" instead of just "dhcp"... another behavior I have observed is that it is best to test a subsequent expected condition brought on by the "dhcp net0" command. For instance check to see if there is a default gateway ${net0/gateway} or an IP set ${net0/ip} ;

Sample Code:

Code:
set 0_lp:int32 0 ; inc 0_lp

:0_retry echo DHCP Attempt ${0_lp} ; dhcp net0 || inc 0_lp
isset ${net0/gateway} && goto 0_dns || goto 0_usrnpu
iseq ${0_lp} 4 && goto 0_usrnpu || sleep 2 ; goto 0_retry

"Thus far, you have been adrift within the sheltered harbor of my patience..."
Find all posts by this user
Quote this message in a reply
2018-10-18, 16:32
Post: #3
RE: Scripting question
(2018-10-18 03:40)MultimediaMan Wrote:  The good news is your code is working. The problem is that the dhcp command is broad statement to test for. I would recommend using "dhcp net0" instead of just "dhcp"... another behavior I have observed is that it is best to test a subsequent expected condition brought on by the "dhcp net0" command. For instance check to see if there is a default gateway ${net0/gateway} or an IP set ${net0/ip} ;

Sample Code:

Code:
set 0_lp:int32 0 ; inc 0_lp

:0_retry echo DHCP Attempt ${0_lp} ; dhcp net0 || inc 0_lp
isset ${net0/gateway} && goto 0_dns || goto 0_usrnpu
iseq ${0_lp} 4 && goto 0_usrnpu || sleep 2 ; goto 0_retry

Thanks much, your response is helpful.
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)