What is issue with this script?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting What is issue with this script?
# 15  
Old 06-11-2013
Quote:
Originally Posted by PikK45
Code:
#!/bin/ksh
i=1
while [ $i -le 5 ]
do
j=0
out=""
 while [ $j -lt $i ]
 do
  out=$out$i
  j=`expr $j + 1`
 done
echo "$out"
i=`expr $i + 1`
done


Thanks boss !!! This thing worked.

But please if possible could you explain the usage of OUT in the above script?

out=""
out=$out$i
echo "$out"

Rgds,
TS
# 16  
Old 06-11-2013
Nothing...

OUT is a temp variable which will help you to hold all the values of i in second while loop

OUT will be set to "" every time in first while loop
# 17  
Old 06-11-2013
Quote:
Originally Posted by PikK45
Nothing...

OUT is a temp variable which will help you to hold all the values of i in second while loop

OUT will be set to "" every time in first while loop
Fine !!!

But how this thing helped in getting i values horizontally?

And can you explain the syntax
out=$out$i
# 18  
Old 06-11-2013
out=$out$i ==> adds existing value of out if any and value of i together and store it in out itself.

In this part,
Code:
out=""
 while [ $j -lt $i ]
 do
  out=$out$i
  j=`expr $j + 1`
 done
echo "$out"

1. out is first set to nothing.
2. enters while loop with i value as 5 [example]
3. j is 0 in the beginning and on entering out=""|5 ==> used | for separating values of OUT and i
4. i=5 , j = 1, out=5|5
i=5, j=2, out=55|5
i=5,j=3,out=555|5
i=5,j=4,out=5555|5
i=5,j=5 => while loops exits
5. print the value of out as 55555

Is this enough?? Smilie
# 19  
Old 06-11-2013
Quote:
Originally Posted by PikK45
out=$out$i ==> adds existing value of out if any and value of i together and store it in out itself.

In this part,
Code:
out=""
 while [ $j -lt $i ]
 do
  out=$out$i
  j=`expr $j + 1`
 done
echo "$out"

1. out is first set to nothing.
2. enters while loop with i value as 5 [example]
3. j is 0 in the beginning and on entering out=""|5 ==> used | for separating values of OUT and i
4. i=5 , j = 1, out=5|5
i=5, j=2, out=55|5
i=5,j=3,out=555|5
i=5,j=4,out=5555|5
i=5,j=5 => while loops exits
5. print the value of out as 55555

Is this enough?? Smilie

Sorry to say but I am not a shell expert so still in doubt about the usage of "OUT" variable


Rgds,
TS

---------- Post updated at 05:17 AM ---------- Previous update was at 04:58 AM ----------

Quote:
Originally Posted by PikK45
out=$out$i ==> adds existing value of out if any and value of i together and store it in out itself.

In this part,
Code:
out=""
 while [ $j -lt $i ]
 do
  out=$out$i
  j=`expr $j + 1`
 done
echo "$out"

1. out is first set to nothing.
2. enters while loop with i value as 5 [example]
3. j is 0 in the beginning and on entering out=""|5 ==> used | for separating values of OUT and i
4. i=5 , j = 1, out=5|5
i=5, j=2, out=55|5
i=5,j=3,out=555|5
i=5,j=4,out=5555|5
i=5,j=5 => while loops exits
5. print the value of out as 55555

Is this enough?? Smilie
Got it "OUT" acts as a buffer and it accumulates the values horizontally and finally prints it !!

Thanks & Rgds
TS
# 20  
Old 06-11-2013
Quote:
Originally Posted by targetshell
print -n option gives me below output:

122333444455555

However, I need output

1
22
333
4444
55555
I forgot to mention explicitly, that you have to insert an empty print statement after the first done to end a line.

Code:
#!/bin/ksh

i=1
while [ $i -le 5 ]
do
j=0
 while [ $j -lt $i ]
 do
  print -n $i
  (( j=j+1 ))
 done
 print
(( i=i+1 ))
done

Output:

Code:
1
22
333
4444
55555

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Issue with pwd for script run by double click on script (MacOS High SIerra)

Hello, I have the following script that just archives and clears some log files. #!/bin/bash # script: archive_logs_and_clear # add date to logfile names and copy archive directory # clear logs # change to script directory cd ... (4 Replies)
Discussion started by: LMHmedchem
4 Replies

2. Shell Programming and Scripting

Issue with script

Hi, I am running below script using autosys. Though the script is running fine, it fails the workflow but the autosys job shows success. Can you please let me know where can i make change to script:- #!/bin/ksh #to test mail from directory set -x frequency=$1 param_file=/local/test... (4 Replies)
Discussion started by: rajrishi990
4 Replies

3. Shell Programming and Scripting

Issue in Script

I developed a script to group by 1st column and sum few of the column which are required, but while executing sum of 2nd column which has decimals in place is not getting correct sum. below is the script awk -F, '{a+=$2;b+=$33;c+=$58;d+=$11;e+=$50;}END{for(i in a)printf... (2 Replies)
Discussion started by: rramkrishnas
2 Replies

4. Shell Programming and Scripting

Issue with the script

I am trying to run a script which ftp the files from one server to another. Below is the script - #!/bin/bash echo "Please enter no : " read variable echo "You entered: $input_variable" host=xxxxx USER=xxx PASSWORD=xxx ftp -inv $HOST <<EOF user $USER $PASSWORD cd... (4 Replies)
Discussion started by: chandraprakash
4 Replies

5. Shell Programming and Scripting

Issue with script

Hi, I have a script which when i run in manually it runs properly, but when i run the same script using UC4 scheduler it dose not run properly. Below is the code i am using. i am not sure what is happening when i run this through UC4 the files are not generated. but when i run this manually it... (1 Reply)
Discussion started by: Mohammed_Tabish
1 Replies

6. Shell Programming and Scripting

Script issue

Hi Folks, I am going through a sample script which is not working. Also i want to understand the certain syntaxes #!/bin/sh clear x="y" echo "enter ur 1st no." read n1 echo "enter ur 2nd no." read n2 while do clear echo "1.sum" echo "2.subtraction" echo "3.product"... (3 Replies)
Discussion started by: rafa_fed2
3 Replies

7. Shell Programming and Scripting

Script Issue

#!/bin/bash ########################################### ADMIN="usera@mblonline.com" AMQ="userb@mblonline.com" SUBJECT="Remote Shutdown Client Status" MAIL="/bin/mail" ########################################### DAT=`date '+%d-%b-%Y'` PLUGIN="/usr/lib/nagios/plugins/check_nrpe" PORT="5666"... (2 Replies)
Discussion started by: telnor
2 Replies

8. Shell Programming and Scripting

Script running from another script issue

Hello All, I am ruuning the below script. userchecking.sh ########################### #! /bin/ksh NIS_SCRIPT_HOME="/mot/systems/NIS_SCRIPT_NEW" . $NIS_SCRIPT_HOME/common.env WORK_DIR="/mot/systems/scripts/" #WORK_DIR="/mot/b36376/myscripts/nis_user_automation"... (1 Reply)
Discussion started by: ajaincv
1 Replies

9. Shell Programming and Scripting

Issue with the script

#!/bin/ksh set -x SQLSTR="LOGIN/PASSWORD" sqlplus -s ${SQLSTR} @<<EOF set pagesize 0 feedback off verify off heading off echo off; UPDATE TABLE NAME SET VALUE = VALUE + 1 where VALUE2 = 'ABCDE'; exit; COMMIT; EOF i am not able to update the column and not able to exit from sqlplus. ... (7 Replies)
Discussion started by: karthicss
7 Replies

10. Shell Programming and Scripting

Bash script: issue changing directories in script

I am working on a script that checks two arguments at the command line. The first argument is a search pattern, the second can be a file or a directory, if it is a file a second script is called that checks it for the search pattern. If the second argument is a directory, it checks for the search... (5 Replies)
Discussion started by: Breakology
5 Replies
Login or Register to Ask a Question