Sponsored Content
Full Discussion: Date difference
Top Forums Programming Date difference Post 302579635 by m.d.ludwig on Tuesday 6th of December 2011 08:58:26 AM
Old 12-06-2011
The problem is the split.
Taking a section of your code (in blue), and printing out the arguments to timelocal:
Code:
my $beginning = 'Fri Oct  6 05:54:09 2007';
my @b = split(/[:\s]/, $beginning);

$, = ', ';
$\ = "\n";
print $b[5], $b[4], $b[3], $b[2], $months{$b[1]}-1, $b[-1];

You get
Code:
54,05,6,,9,2007

Notice the ","?
There are two spaces between "Oct" and "6". You need to change your regex:
Code:
my $beginning = 'Fri Oct  6 05:54:09 2007';
my @b = split(/[:\s]+/, $beginning);

$, = ', ';
$\ = "\n";
print $b[5], $b[4], $b[3], $b[2], $months{$b[1]}-1, $b[-1];

Which gives you want you want as arguments to timelocal:
Code:
09,54,05,6,9,2007

Ok, to be "more accurate" Smilie, the regex should be /:|\s+/.
 

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

date difference

Hi...I need some help with a date script. I need to allow the user to enter the month (alpha) day (int) and year (YYYY) and count the difference in number of days since Jan 1, 1952 to the users date. I've been messing with this for about 10 hours and I think I'm just making the script worse =( ... (1 Reply)
Discussion started by: mtnbaby
1 Replies

2. UNIX for Dummies Questions & Answers

date difference

Hi Can any buddy give mi a simple program or logic or command which will get difference between two dates ex:diff between 20051008 2005908 is 24hours 12 min 2 sec regards (1 Reply)
Discussion started by: rajuMBT
1 Replies

3. Shell Programming and Scripting

date difference

if there are two date one is entered by user and another is system date than how can we finds day difference between these two date try to make it within 4 lines (2 Replies)
Discussion started by: piyush_movadiya
2 Replies

4. Linux

date difference

hi, i have 2 dates in the form: '20080315120030' and '20080310140030'. i.e. YYYYMMDDHHMMSS. i need a way of getting the difference between them using shell script. any thoughts? (14 Replies)
Discussion started by: muay_tb
14 Replies

5. Shell Programming and Scripting

difference in date

Hi All! I would like to know the time difference between two dates which are in same format... $ date -r abc Thu Oct 29 09:40:37 EDT 2009 $ date Fri Oct 30 02:07:03 EDT 2009 i would like to find the diff between these two dates in hours..please help..:) Regards, Kiran (3 Replies)
Discussion started by: dddkiran
3 Replies

6. Shell Programming and Scripting

Difference in date

Dear all, I fancy that I'm pretty competent in ksh, but I have someone on HP-UX wanting me to script up a simple interface to handle user alterations rather than giving them high privileges to run up SAM. This is all fairly straightforward, but I'm stuck on an epoch date issue. When we have... (6 Replies)
Discussion started by: rbatte1
6 Replies

7. Homework & Coursework Questions

help with the date difference

1. The problem statement, all variables and given/known data: The problem i have is that i probably make a few mistake here in the code but don't know what it is and i try to get the date difference but don't know where to add the days_in_month function 2. Relevant commands, code,... (1 Reply)
Discussion started by: mgyeah
1 Replies

8. Shell Programming and Scripting

Date difference

HI All , i need a bash script to find the number of days between two dates . Format YYYY-MM-DD THanks, Neil (1 Reply)
Discussion started by: nevil
1 Replies

9. AIX

Time Difference between date and date -u

Hi Everyone, We are having an issue with date and date -u in our AIX Systems. We have checked environment variable TZ and /etc/environment and however, we could not rectify the difference. >date Thu Mar 19 22:31:40 IST 2015 >date -u Thu Mar 19 17:01:44 GMT 2015 Any clue... (5 Replies)
Discussion started by: madhav.kunapa
5 Replies

10. Shell Programming and Scripting

Difference between two date

Hi, I created a script for finding the duration of a job using the start and end time of the job. But the command doesnt calculate correct value if the duration is more than 24 hours. Any help would be really good . cat test1 --- start time 03/27/15 17:41:00 03/24/15 11:58:04 03/23/15... (3 Replies)
Discussion started by: rogerben
3 Replies
MARC::Lint::CodeData(3pm)				User Contributed Perl Documentation				 MARC::Lint::CodeData(3pm)

NAME
MARC::Lint::CodeData -- Contains codes from the MARC code lists for Geographic Areas, Languages, and Countries. DESCRIPTION
Code data is used for validating fields 008, 040, 041, and 043. Also, sources for subfield 2 in 600-651 and 655. Stores codes in hashes, %MARC::Lint::CodeData::[name]. Note: According to the official MARC documentation, Sears is not a valid 655 term. The code data below treats it as valid, in anticipation of a change in the official documentation. SYNOPSIS
use MARC::Lint::CodeData; #Should provide access to the following: #%MARC::Lint::CodeData::GeogAreaCodes; #%MARC::Lint::CodeData::ObsoleteGeogAreaCodes; #%MARC::Lint::CodeData::LanguageCodes; #%MARC::Lint::CodeData::ObsoleteLanguageCodes; #%MARC::Lint::CodeData::CountryCodes; #%MARC::Lint::CodeData::ObsoleteCountryCodes; #%MARC::Lint::CodeData::Sources600_651; #%MARC::Lint::CodeData::ObsoleteSources600_651; #%MARC::Lint::CodeData::Sources655; #%MARC::Lint::CodeData::ObsoleteSources655; #or, import specific code list data use MARC::Lint::CodeData qw(%GeogAreaCodes); my $gac = "n-us---"; my $validgac = 1 if ($GeogAreaCodes{$gac}); print "Geographic Area Code $gac is valid " if $validgac; EXPORT
None by default. @EXPORT_OK: %GeogAreaCodes, %ObsoleteGeogAreaCodes, %LanguageCodes, %ObsoleteLanguageCodes, %CountryCodes, %ObsoleteCountryCodes, %Sources600_651, %ObsoleteSources600_651, %Sources655, %ObsoleteSources655. TO DO
Update codes as needed (see <http://www.loc.gov/marc/>). Add other codes for MARC Code Lists for Relators, Sources, Description Conventions. Determine what to do about 600-655 codes with indicators (cash, lcsh, lcshac, mesh, nal, and rvm). Currently, these are duplicated in valid and obsolete hashes. Validation routines should probably treat these differently due to large numbers of records using these codes, created before the indicators were allowed. Determine whether three blank spaces should be in the LanguageCodes (for 008 validation) or not. If it is here, then 041 would be allowed to have three blank spaces as a valid code (though other checks would report the error--spaces at the beginning and ending of a subfield and multiple spaces in a field where such a thing is not allowed). SEE ALSO MARC::Lint MARC::Lintadditions (for check_040, check_041, check_043 using these codes) MARC::Errorchecks (for 008 validation using these codes) <http://www.loc.gov/marc/> for the official code lists. The following (should be included in the distribution package for this package): countrycodelistclean.pl gaccleanupscript.pl languagecodelistclean.pl The scripts above take the MARC code list ASCII version as input. They output tab-separated codes for updating the data below. VERSION HISTORY
Version 1.28: Updated May 2, 2009. -Added new sources codes from Technical Notice of Oct. 10, 2008. -Added new sources codes from Technical Notice of Dec. 16, 2008. -Added new language codes from Technical Notice of Jan. 6, 2009 (mol moved to ObsoleteLanguageCodes). -Added new sources codes from Technical Notice of Jan. 23, 2009. -Added new sources codes from Technical Notice of Feb. 19, 2009. -Added new sources codes from Technical Notice of Apr. 22, 2009. Version 1.27: Updated Aug. 14, 2008. -Added new sources codes from Technical Notice of July 25, 2008. Version 1.26: Updated July 6, 2008. -Added new language codes from Technical Notice of July 1, 2008. -Moved obsolete language codes 'scc' and 'scr' to the obsolete language hash. Version 1.25: Updated Apr. 28, 2008. -Added new sources codes from Technical Notice of Apr. 25, 2008. Version 1.24: Updated Mar. 30, 2008. -Added new sources codes from Technical Notice of Mar. 28, 2008. Version 1.23: Updated Mar. 26, 2008. -Added new country and GAC codes from Technical Notice of Mar. 25, 2008. Version 1.22: Updated Jan. 21, 2008. -Added new sources codes from Technical Notice of Jan. 18, 2008. Version 1.21: Updated Nov. 30, 2007. -Added new sources codes from Technical Notice of Nov. 30, 2007. Version 1.20: Updated Nov. 19, 2007. -Added new language codes from Technical Notice of Nov. 16, 2007. Version 1.19: Updated Oct. 22, 2007. -Added new language codes from Technical Notice of Oct. 22, 2007. Version 1.18: Updated Aug. 14, 2007. -Added new source codes from Technical Notice of Aug. 13, 2007. Version 1.17: Updated July 16, 2007. -Added new source codes from Technical Notice of July 13, 2007. Version 1.16: Updated Apr. 18, 2007. -Added new source codes from Technical Notice of Apr. 5, 2007. Version 1.15: Updated Feb. 28, 2007. -Added new country and geographic codes from Technical Notice of Feb. 28, 2007. -Added 'yu ' to list of obsolete codes. Version 1.14: Updated Jan. 8, 2007. -Added new source codes from Technical Notice of Jan. 5, 2007. Version 1.13: Updated Nov. 19, 2006. -Added new source codes from Technical Notice of Nov. 14, 2006. Version 1.12: Updated Oct. 20, 2006. -Added new source code from Technical Notice of Oct. 19, 2006. Version 1.11: Updated Oct. 18, 2006. -Added new source codes from Technical Notice of Oct. 17, 2006. Version 1.10: Updated Aug. 30, 2006. -Added new source codes from Technical Notice of Aug. 29, 2006. Version 1.09: Updated June 26, 2006. -Added new source codes from Technical Notice of June 23, 2006. Version 1.08: Updated May 30, 2006. -Added new source codes from Technical Notice of May 26, 2006. Version 1.07: Updated Mar. 13, 2006. -Added new source codes from Technical Notice of Mar. 10, 2006. Version 1.06: Updated Feb. 23, 2006. -Added new language codes from Technical Notice of Feb 23, 2006. -Alphabetized language codes. Version 1.05: Updated Jan. 11, 2006. -Added new sources codes from Technical Notice of Jan. 10, 2006. Version 1.04: Updated Oct. 13, 2005. -Added new sources codes from Technical Notice of Oct. 12, 2005. Version 1.03: Updated Aug. 31, 2005. -Added new language codes for Ainu and Southern Altai (August 30, 2005 technical notice) Version 1.02: Updated June 21-July 12, 2005. Released (to CPAN) with new version of MARC::Errorchecks. -Added GAC and Country code changes for Australia (July 12, 2005 update) -Added 6xx subfield 2 source code data for June 17, 2005 update. -Updated valid Language codes to June 2, 2005 changes. Version 1.01: Updated Jan. 5-Feb. 10, 2005. Released (to CPAN) Feb. 13, 2005 (with new version of MARC::Errorchecks). -Added code list data for 600-651 subfield 2 and for 655 subfield 2 sources. -Updated codes based on changes made Jan. 19 (languages), Feb. 2 (sources), Feb. 9 (sources). Version 1.00 (original version): First release, Dec. 5, 2004. Uploaded to SourceForge CVS, Jan. 3, 2005. -Included in MARC::Errorchecks distribution on CPAN. -Used by MARC::Lintadditions. LICENSE
This code may be distributed under the same terms as Perl itself. Please note that this module is not a product of or supported by the employers of the various contributors to the code. AUTHOR
Bryan Baldus eijabb@cpan.org Copyright (c) 2004-2008. perl v5.10.0 2009-09-01 MARC::Lint::CodeData(3pm)
All times are GMT -4. The time now is 09:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy