## Converting date +%j into integer

Converting date +%j into integer
# 1
01-10-2014
Converting date +%j into integer

Dear community,

i got a problem to get "date +%j" as the right value.
Today is the 10th day of the year.

#./script.sh 2

The output of the script is:

010 plus 2 equals 10
010 plus 3 equals 11
and so on.

I tried to declare \$Var1 as an integer.
The output after the declaration is

8 plus 2 equals 10
8 plus 3 equals 11
and so on.

The result should be 12. I need it for further calculations.

do you got any suggestion or solution for this problem?

sincerely

Oskar
 OskarHF View Public Profile for OskarHF Find all posts by OskarHF
# 2
01-10-2014
a bug in bash??
Did my test on AIX7.1 after seeing on old HP it works (only ksh...)

So change your first line to sh or ksh...
This User Gave Thanks to vbe For This Post:
 vbe View Public Profile for vbe Find all posts by vbe
# 3
01-10-2014
ok quick update:
 vbe View Public Profile for vbe Find all posts by vbe
# 4
01-10-2014
thank you, i had to install ksh first, but now it works fine!

 OskarHF View Public Profile for OskarHF Find all posts by OskarHF
# 5
01-10-2014
This is not a bug -- the leading 0 causes the shell to think the number is octal. 010 would be 8 in octal.

You can do string operations to strip off leading 0's, but I tend to take the easy way, slapping a '1' on the front to make it look decimal. Subtract 1000 as part of your math operations.
This User Gave Thanks to Corona688 For This Post:
 Corona688 View Public Profile for Corona688 Visit Corona688's homepage! Find all posts by Corona688
# 6
01-13-2014
You could also user typeset to force the variable to be an integer:-
I have noticed a difference in the output from this depending on the OS though.

It seems that AIX (4, 5 and 6) & HP-UX 11 do what I expect, but RHEL (bash & ksh93) computes this to set Var=11

Maybe it's to do with the version of the shell, but AIX 6 has ksh93 available and that works as I expect (value of 13). Something to be tested first. Maybe this would be safer:-

Robin

Last edited by rbatte1; 01-13-2014 at 08:15 AM.. Reason: Grammar
 rbatte1 View Public Profile for rbatte1 Visit rbatte1's homepage! Find all posts by rbatte1
# 7
01-13-2014
@rbatte that last bit will not work for day of the year with a 0 in position 2 or 3. Perhaps this:

 Scrutinizer View Public Profile for Scrutinizer Find all posts by Scrutinizer

## Converting time format as Integer to seconds

Hello, How can we convert date like format 20181004171050 in seconds ? I can able to convert till date but failing for HHMMSS. date -d "20181004" "+%s" output as 1538596800 . But when i add hhmmss it is failing date -d "20181004172000" "+%s" result Invalid date Kindly guide. Regards

## Converting String To Integer/Float (weird case)

Hi guys, I'm new here. I have a problem at work. One of our scripts was eventually having a bug and only detected recently. Here's the issue and background: Bash Script which calls AWK script Awk script returns a string as per below (example):var1='00000-123'So, when we convert it, the...

## Converting string to integer

I have a function that is supposed to check for user processes and wait for 0 count before exiting the function. I am sure I have more than one issue in my code, but the stumbling block right now is that I am trying to convert the value of my variable from a string to integer. process_count...

## Converting a date to friday date and finding Min/Max date

Dear all, I have 2 questions. I have a file with many rows which has date of the format YYYYMMDD. 1. I need to change the date to that weeks friday date(Ex: 20120716(monday) to 20120720). Satuday/Sunday has to be changed to next week friday date too. 2. After converting the date to...

## Converting Month into Integer

okay so i run an openssl command to get the date of an expired script. Doing so gives me this: enddate=Jun 26 23:59:59 2012 GMT Then i cut everything out and just leave the month which is "Jun" Now the next part of my script is to tell the user if the the certificate is expired or not...

## Converting decimal to integer

The shell mentioned below will show a warning if the page takes more than 6 seconds to load. The problem is that myduration variable is not an integer. How do I convert it to integer? myduration=\$(curl http://192.168.50.1/mantisbt/view.php?id=1 -w %{time_total}) > /dev/null ; ] && echo...

## Converting integer to String

Hi everyone, I would like to know how to convert an integer to a string. for instance if i=1 i would like to creat a variable called constant1. i want to do this in a for loop so for each value of i, i create a new variable such as constant2, constant3,... and so on. for i in 1 2 3 do ...

## Converting a String variable into Integer

Hi, I am passing a variable to a unix function. However when I try to assign the value to another variable like typeset -i I_CACHE_VAL=\$2 Is this because of String to Integer conversion? I get an error. Please help me with thsi. Thanks

## Converting a decimal into integer

Hi all, I'm trying to convert a decimal number into an integer number; I'm doing this: n=`echo |awk '{ print "'"\$mem"'"*10}'` where the variable mem is equal to 3.7 I'd like to obtain 37, but the expression above gives me 30. Help please!!!! thx a lot

## command for converting string to integer

Hi ... I am trying to calculate the time needed for a command to execute.. but the resulting value is getting as string.. so i am not able to use "expr " command.. please help me to convert the value to integer so that i can proceed with my script.. Regards esham