Value Too Great for Base Error, Explanation and Workout needed


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Value Too Great for Base Error, Explanation and Workout needed
# 8  
Old 11-19-2013
Quote:
Originally Posted by RudiC
bash takes numerical input with leading zeroes to be octal values, hence 8 & 9 are too great. You can either strip the zeroes or indicate the base by e.g. a leading 10# . man bash:
with this in mind

i would turn my variables to ??

Code:
old_file()
{
    local_dtcmp=`date -d "$1" +"%F"`; shift
    local_dtcmp="$(( 10#$local_dtcmp ))"
    local_today=`date -d "$*" +"%F"`
    local_today="$(( 10#$local_today ))"
    return `test $((today - dtcmp)) -lt 0`
}

---------- Post updated at 06:50 PM ---------- Previous update was at 06:46 PM ----------

Quote:
Originally Posted by Chubler_XL
Well try a file with 2013-02-02 timestamp and you'll set that code thinks that file is not old!

I tested it with a file with that time stamp and it worked fine.

the only issue I have seen so far is still with the 08 & 09 numbers

will try and convert yo base 10 with the 10# suggested earlier
# 9  
Old 11-19-2013
Apologies the issue asserts it's self when you look at recent dates eg: 2013-11-19
# 10  
Old 11-19-2013
no worries. in any case, i continued to use the 10# and was still unsuccessful.

i was told with the GNU Tools I can use date and do something like
Code:
date --date="7 days ago"

anyone know the validity of this?
# 11  
Old 11-20-2013
Yes that is perfectly valid for GNU date or you could do date --date "today - 7 days"
# 12  
Old 11-20-2013
This looks weird to me
Code:
return `test $((today - dtcmp)) -lt 0`

The return status is the exit status of the last command. Save a subshell and just end the function with

Code:
(( today - dtcmp < 0 ))

# 13  
Old 11-20-2013
The following does a string comparison what is IMHO more appropriate than integer comparison,
and implicitly returns the last status code (0 or 1):
Code:
old_file()
{
    local dtcmp=`date -d "$1" +"%F"`; shift
    local today=`date -d "$*" +"%F"`
    [[ $today < $dtcmp ]]
}

GNU date is required anyway, regardless if "today -7 days" or "-7 days" or -d or --date
This User Gave Thanks to MadeInGermany For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Explanation for Scripts Inner Workings Needed

#!/bin/bash n=$l; typeset -a v x=$(< input.dat) check(){ if; then sed 's/Test/Proc/g' file.sh >fl.sh else exit 13 fi } check $n while ; do x=`expr $x -l` v=$x done less fi.sh l>/dev/null&& echo yes || exit 1 echo v= ${v } exit 0 I have file.sh and input.dat in the current... (3 Replies)
Discussion started by: bananasprite
3 Replies

2. Shell Programming and Scripting

Little explanation needed on array

I had gone through..google search.....and unix user post.......where I found so many ways of accessing files..... suppose if I am having 4 files, each file is having 3 columns, and I want to use each field of each column, then how can I use it.. how can I create array for each file's each column,... (8 Replies)
Discussion started by: Dona Clara
8 Replies

3. UNIX for Advanced & Expert Users

Grep - Explanation needed.

grep -E '^(++){5}5000' <file_name> this command searches value 5000 in only 6th column from provided file where pipe ( | )is delimiter which separate columns... can some one plz explain me what '^(++){5}5000' actually does..? :confused: (1 Reply)
Discussion started by: Killer420
1 Replies

4. Programming

Python 3.1 TypeError explanation needed

Could someone explain why Python 3.1 errors out below? Do I need an additional module that's not required in 3.2 perhaps? I need to use 3.1 as it's the version available on a server I am using. Python 3.2.1rc1 (default, May 18 2011, 11:01:17) on linux2 Type "help", "copyright", "credits"... (0 Replies)
Discussion started by: jelloir
0 Replies

5. Shell Programming and Scripting

Explanation Needed

Hi all, I'm very new to UNIX. I have got a coding, where i dont understand the below part. Could someone please explain it in detail? awk 'NR > 1; NR == 1 { S = $0 } END { print S }' $textfile.bak > $textfile could someone explain what awk 'NR > 1; NR == 1 { S = $0 } END { print S }' ... (1 Reply)
Discussion started by: raghulshekar
1 Replies

6. Solaris

showrev output explanation needed

hi this is the output of showrev command from my sun blade 150 machine. bash-3.00# showrev Hostname: u15_9 Hostid: 83685284 Release: 5.10 Kernel architecture: sun4u Application architecture: sparc Hardware provider: Sun_Microsystems Domain: sun.com Kernel version: SunOS 5.10... (1 Reply)
Discussion started by: kingston
1 Replies

7. UNIX for Advanced & Expert Users

Which Base Level Filesets needed by a specific program?

hello... thats a great forum btw :) my problem is that I need a list of the Base Level Filesets (BLF) which are needed by a specific program. Is there any command/tool which shows me that? during the installation I can choose "Preview only" so that I can see what BLF´s are missing etc but... (4 Replies)
Discussion started by: cypher82
4 Replies

8. UNIX for Dummies Questions & Answers

Exec explanation needed

Hello! I want to read a file line by line and have each line in a variable. I have found the following code. #!/bin/bash exec 3< data while read <&3 do echo "The number is $REPLY" a.out "$REPLY" done exec 3>&- I don't understand the use of exec and its arguments, though having read... (3 Replies)
Discussion started by: myle
3 Replies

9. Shell Programming and Scripting

Windows driver needed for 1000 base tx card (HP)

First of all, excuse my ignorance in my questions, but truth is, I know nothing about Unix. I have recently purchased some A7012A's (dual port, 1000 base T/X) gigabit cards and need to use them in a windows environment. I am trying to see if it is possible to have drivers written for the card... (0 Replies)
Discussion started by: poaking
0 Replies

10. Shell Programming and Scripting

sed command explanation needed

Hi, Could you please explain me the below statement -- phrase wise. sed -e :a -e '$q;N;'$cnt',$D;ba' abc.txt > xyz.txt if suppose $cnt contains value: 10 it copies last 9 lines of abc.txt to xyz.txt why it is copying last 9 rather than 10. and also what is ba and $D over there in... (4 Replies)
Discussion started by: subbukns
4 Replies
Login or Register to Ask a Question