Korn Shell manipulating the string into dynamic currency number


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Korn Shell manipulating the string into dynamic currency number
# 1  
Old 05-19-2015
Korn Shell manipulating the string into dynamic currency number

Conversion of string into currency value..

ex1:

Code:
number_of_positions=2
input_string=345987

Output= 345,987.00

ex2:

Code:
number_of_positions=4
input_string=1345987

Output= 1,345,987.0000

Please respond as soon as possible

Moderator's Comments:
Mod Comment edit by bakunin: we will gladly respond as soon as you start learning how to use CODE-tags. The notification to use them when you started the thread was not only meant for others - it was meant for you too. Thank you.

Last edited by bakunin; 05-19-2015 at 06:16 AM..
# 2  
Old 05-19-2015
What have you tried?

Is this a homework assignment?

Homework and coursework questions can only be posted in this forum under special homework rules.
This User Gave Thanks to Don Cragun For This Post:
# 3  
Old 05-19-2015
This is my work related.. in development we have bash shell... below command is working fine.. but in prod environment we have korn shell and the same command is failing..

Code:
COL_VAL_2=`printf "%'0.${V_NO_of_Dec}f" $COL_VAL_1`

here
V_NO_of_Dec is the number of decimals that needed in output
COL_VAL_1 is input value

it is prod issue.. please help me out..

Moderator's Comments:
Mod Comment edit by bakunin: same here - code-tags, please!

Last edited by bakunin; 05-19-2015 at 06:17 AM..
# 4  
Old 05-19-2015
What operating system are you using? What version of the Korn shell are you using?

On OS X, with ksh version sh (AT&T Research) 93u+ 2012-08-01, the following script (using the variables you specified in your 1st post):
Code:
#!/bin/ksh
for number_of_positions in 2 4
do	for input_string in 345987 1345987
	do	output_string=$(printf "%'.*f\n" $number_of_positions \
			$input_string)
		printf 'number_of_positions=%d\n' $number_of_positions
		printf 'input_string=%s\n' $input_string
		printf 'Output=%s\n\n' "$output_string"
	done
done

produces the output:
Code:
number_of_positions=2
input_string=345987
Output=345,987.00

number_of_positions=2
input_string=1345987
Output=1,345,987.00

number_of_positions=4
input_string=345987
Output=345,987.0000

number_of_positions=4
input_string=1345987
Output=1,345,987.0000

And, it produces the same output with or without the zero in the printf format string before the decimal point.

PS. In what way is ksh failing? What diagnostic does it print?

Last edited by Don Cragun; 05-19-2015 at 02:08 AM.. Reason: Add PS.
This User Gave Thanks to Don Cragun For This Post:
# 5  
Old 05-19-2015
Thanks for prompt response..

copied same code into sample script and executed. below is the output i see.. i just pasted for one value..
Code:
+ + printf %'.*f\n 2 345987
printf: bad conversion
printf: bad conversion
output_string=.*f
.*f
+ printf number_of_positions=%d\n 2
number_of_positions=2
+ printf input_string=%s\n 345987
input_string=345987
+ printf Output=%s\n\n .*f
.*f
Output=.*f
.*f


And also to give more information--
OS version - AIX version 6.1
Korn Shell version - Version M-11/16/88f



Please advice to add if any binaries or do the needful..

Thanks


Moderator's Comments:
Mod Comment edit by bakunin: same here - code-tags, please!

Last edited by bakunin; 05-19-2015 at 06:18 AM..
# 6  
Old 05-19-2015
Possible that printf version doesn't like the ' ?
# 7  
Old 05-19-2015
I repeat: What operating system are you using and what version of the Korn shell are you using?

Last edited by Don Cragun; 05-19-2015 at 04:22 AM.. Reason: Note that I've asked this question before.
This User Gave Thanks to Don Cragun For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Solaris

Korn shell - evaluating string gives wrong results due to limitations

Anyone ever seen this? Someone mentioned this the other day.... If you do, for instance, in korn shell, echo $(5.2+2.5), it gives the result of 6 regardless. Can't remember why but it was the limitation of the korn shell. (5 Replies)
Discussion started by: psychocandy
5 Replies

2. Shell Programming and Scripting

korn shell: check the content of a string of a variable

hello, i have a variable which should have following content : var="value1" or var="value2" or var="value2:*" # example: value2:22 how can i check : - if the content is ok (value1 / value2* ) - the two options of "value2" when content is example "value2:22" , i want to split... (3 Replies)
Discussion started by: bora99
3 Replies

3. Shell Programming and Scripting

[C SHELL] How to pass dynamic number of arguments

I have a task. The scenario is like this. I have a operation program (OPR1) , whose function is to simply double the (single)value it receives as input. I have to write a script to operate the OPR1 and save its output in a file. Later, I have to modify the script so as to be able to operate ... (0 Replies)
Discussion started by: animesharma
0 Replies

4. Shell Programming and Scripting

String parsing in Korn Shell

Hi everybody, I have a string stored in a variable called record: record="SNMPv2-SMI::ent.9.9.43.1.3.9.2 = Timeticks: (177330898) 20 days, 12:35:08.98" I want to write some regular expressions good for Korn Shell to extract the number between parenthesis, in this case 177330898, and put it in... (3 Replies)
Discussion started by: omoyne
3 Replies

5. Shell Programming and Scripting

Korn Shell - Finding lowest number of a file.

I'm writing a KSH script that will get a file on the command line (such as input.txt), and in this file there is on number per line. The program needs to take the file, read each and determine the lowest number in the file. I currently have a while loop setup that will correctly out put every... (8 Replies)
Discussion started by: denyal
8 Replies

6. Shell Programming and Scripting

How to: Parse text string into variables using Korn shell

I am writing a script to keep check on free disk space, and I would like to find a way to parse $LINE (see code below) into a numeric value (for free disk space percentage) and a string value (for mount point). If possible, I would like to avoid sed or any additional use of awk since I am not very... (7 Replies)
Discussion started by: shew01
7 Replies

7. UNIX for Dummies Questions & Answers

string manipulating

I have a file like this: Tue Apr 15 10:41:47 MDT 2008 FINAL RESULT; 6 Tue Apr 15 10:41:47 MDT 2008 FINAL RESULT; 2 Tue Apr 15 10:41:47 MDT 2008 FINAL RESULT; 5 With this command seira=`cut -f 2 -d ';' tes.txt` i take all the results (6,2,5 etc) and i store them in variable seira When i do... (9 Replies)
Discussion started by: psalas
9 Replies

8. Shell Programming and Scripting

Max number of parameters to korn shell?

Hi All, what is the maximum limit for the command line arguments in korn shell. Regards, Raju (4 Replies)
Discussion started by: rajus19
4 Replies

9. Shell Programming and Scripting

generate random number in korn shell

I want to be able to generate a random number within a korn shell script.. Preferably i would like to be able to state how many digits should be in this random number... ie 4 digits or 5 digits etc Any ideas? (2 Replies)
Discussion started by: frustrated1
2 Replies

10. Shell Programming and Scripting

shell to number and to string

Hello Does the unix korn shell provide a function to convert between number and string data-types regards Hrishy (1 Reply)
Discussion started by: xiamin
1 Replies
Login or Register to Ask a Question