Convert to Integer


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Convert to Integer
# 8  
Old 11-02-2011
GNU date will accept epoch seconds in -d if you give it as -d @151235252...

The @ syntax is buried deeply in the info page and not mentioned in the man page.
# 9  
Old 11-02-2011
Hi !

i already tried to remove the / and :

Code:
time="01/Jan/2011:12:55:21"
time=`echo "$time" |sed 's/\// /g'`
time=`echo "$time" |sed 's:\:: :g'`
time=`date -d "$time" +%s`

Quote:
output is the same
date: invalid date `01 Jan 2011:12:55:21'
is there any simple way to convert it?
i'm using Unix Borne Shell (terminal)

and thanks to Vgersh99 to showing me the simple way of removing / and :

Regards Ewa
# 10  
Old 11-02-2011
"What kind of shell do you have?"
"Bourne"

"What model car do you have?"
"Blue"

Bourne is a very vague answer. Code that will work in all bourne shells is often far from the most efficient possible in your shell.

That aside, I think you've overcomplicating this. Since you have date -d, you must have GNU date, which will accept dates in epoch seconds but you must put a @ before it to tell it it's epoch seconds.

Code:
$ VAR=$(date +%s)
$ echo $VAR
1320260040
$ date -d "@${VAR}"
Wed Nov  2 12:54:00 CST 2011
$

# 11  
Old 11-04-2011
Hi !

my problem was to convert the mentioned time stamp into second with a specific format because the file i'm reading has that specific format so i'm bounded

"01/Nov/2011:03:14:59"

i tried different ways but it is not working so is it possible to convert it into seconds

as i convereted "01/Nov/2011"

Code:
date=`01/Nov/2011`
date=`echo "$date" |sed 's/\// /g'`
date=`date -d "$date" +%s`
echo $date

Code:
output
13456940....

if it is not possible then it is okay, but i guess it should be very easy for you guys

anyways thanks

Regards

Ewa
# 12  
Old 11-04-2011
Apologies for not noticing the updated question, I was answering your OP...

You still haven't told us what shell you use. It would be a lot easier to answer if you told us what shell you use. As is, I'll write two different answers for you.

After a lot of experimentation, I've found GNU date accepts dates like these:

"01-Jan-2011 12:55:21"

So:

Code:
DATE="01/Jan/2011:12:55:21"
IFS=":/" read DD MMM YYYY HH MM SS <<<"$DATE"
date -d "$DD-$MMM-$YYYY $HH:$MM:$SS"

Or a version that will work in any generic bourne shell:

Code:
DATE="01/Jan/2011:12:55:21"
OIFS="$IFS"
IFS=":/"
set -- $DATE # Variable MUST NOT be in quotes!
IFS="$OIFS"

date -d "$1-$2-$3 $4:$5:$6"

Note that the generic version overwrites your $1,$2,... parameters.
This User Gave Thanks to Corona688 For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Convert string number to a integer

I have data as below "ROWS merge process complete. thousand rows changed" I need to get a variable assigned the value of 1000. I mean convert the string thousand to 1000. Any help or pointer. Please use CODE tags as required by forum rules! (6 Replies)
Discussion started by: dsravanam
6 Replies

2. Shell Programming and Scripting

How to read from file and convert from string to integer?

Hi all, I am trying to write a script to be able to Run top command Pick the PIDs that are taking more than 90% of CPU time Get more details like what is the script name and location for that PID Script should run until I manually kill it by ctrl + C I have come up with following script... (3 Replies)
Discussion started by: pat_pramod
3 Replies

3. Shell Programming and Scripting

How to convert string into integer in shell scripting?

Hi All, sessionid_remote=$(echo "select odb_sessionid from sysopendb where odb_dbname='syscdr';" | sudo -u cucluster ssh ucbu-aricent-vm93 "source /opt/cisco/connection/lib/connection.profile; $INFORMIXDIR/bin/dbaccess sysmaster@ciscounity") for sid in $sessionid_remote;do if * ]];... (2 Replies)
Discussion started by: deeptis
2 Replies

4. Shell Programming and Scripting

[Solved] need to convert decimal to integer

Using below command awk 'NR==FNR{A=$1;next} {sum+=($2*A)}END{OFMT="%20f";print int(sum)}' Market.txt Product.txt answer:351770174.00000 how to convert this to 351770174. when i try with below command i am getting different result. awk 'NR==FNR{A=$1;next}... (3 Replies)
Discussion started by: katakamvivek
3 Replies

5. Shell Programming and Scripting

how to compare string integer with an integer?

hi, how to I do this? i="4.000" if ; then echo "smaller" fi how do I convert the "4.000" to 4? Thanks! (4 Replies)
Discussion started by: h0ujun
4 Replies

6. Shell Programming and Scripting

Read Variable From Fille And Convert it to Integer

I read 3 variables from from Inputfile.txt the third one "startnumber" is a number when i compare it with 9 ($startnumber -le 9) it give's me a "unary operator expected", i know that -le is for number comparison. What i need is to convert $startnumber to integer (i have try to do it with expr but... (8 Replies)
Discussion started by: marios
8 Replies

7. Shell Programming and Scripting

how to convert string to an integer and how to do calculations like add.,sub.,mult. on it

How to convert string into an integer or number For example : % set tim = `date` % echo $tim Tue Feb 22 16:25:08 IST 2011 here How to increment time by 10 hrs like 16+10 , here 16 is a string in date cmd. .. how to convert 16 to an integer and added to a another nimber ? Thanks... (3 Replies)
Discussion started by: sbhamidi
3 Replies

8. UNIX for Dummies Questions & Answers

integer to string

Hi all, is there an easy way to convert integer to string in bash? I have numbers like 1, 2, ..., 112, ... and I would like to get 001 002 003 004 ... Thank you, Sarah (4 Replies)
Discussion started by: f_o_555
4 Replies

9. UNIX for Dummies Questions & Answers

Rouding off an integer

HI I want to round off an integer to the next multiple of 10 in shell script. (i.e.,) 91 should be rounded off to 100 and 90 should be rounded off to 90 It would be very helpful, if you can help me in this. Thanks in advance (4 Replies)
Discussion started by: dayamatrix
4 Replies

10. UNIX for Dummies Questions & Answers

convert from an integer to a string

i want to convert from an integer to a string..in unix...i am writing a C program with embedded SQL... I remeber using itoa...but for some reason it doesnt work......i cant find it in the manual..... Maybe that is the wrong command..... but i have checked Dev Studio.....and it doest exist in the... (6 Replies)
Discussion started by: mojomonkeyhelper
6 Replies
Login or Register to Ask a Question