Sponsored Content
Full Discussion: file date vs. system date
Top Forums UNIX for Dummies Questions & Answers file date vs. system date Post 6739 by Perderabo on Tuesday 11th of September 2001 09:45:48 AM
Old 09-11-2001
I'd like to offer my thoughts on ctime verses mtime. Sorry, but this will be a little verbose.

First, if you change the contents of a file you change the mtime of a file. Since this is a change to the inode, ctime is updated as well. The mtime is bit like the date on a letter and ctime is a bit like the postmark on the envelope.

You can set mtime to anything you want via the utime() system call or the touch command. Doing so sets the ctime and you cannot reset ctime.

If you restored last year's payroll records from tape, you might want to set the mtime back to the end of last year. But the ctime will reliably still indicate when the last change to the file occurred. This is how your backup program will know that it must back up the file. The ctime is really used by backup program. But an application program that prints out a payroll listing would use mtime.
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Compare date from db2 table to yesterday's Unix system date

I am currently running the following Korn shell script which works fine: #!/usr/bin/ksh count=`db2 -x "select count(*) from schema.tablename"` echo "count" I would like to add a "where" clause to the 2nd line that would allow me to get a record count of all the records from schema.tablename... (9 Replies)
Discussion started by: sasaliasim
9 Replies

2. Shell Programming and Scripting

Set system date to some date (Sunos)

I am testing a script and need to change the system date to Nov 30 2009. I cannot seem to find a way to do this other than TZ command but it does not seem to work correctly. I tried TZ=GMT+168 date but it is returning todays date Mon Dec 7 19:48:11 GMT 2009 ...instead of Nov 30 2009 I... (4 Replies)
Discussion started by: hanton
4 Replies

3. Shell Programming and Scripting

how to get what date was 28 days ago of the current system date IN UNIX

Hi, Anybody knows how to get what date was 28 days ago of the current system date through UNIX script. Ex : - If today is 28th Mar 2010 then I have to delete the files which arrived on 1st Mar 2010, (15 Replies)
Discussion started by: kandi.reddy
15 Replies

4. UNIX for Dummies Questions & Answers

Delete a row from a file if one column containing a date is greater than the current system date

Hello gurus, I am hoping someone can help me with the required code/script to make this work. I have the following file with records starting at line 4: NETW~US60~000000000013220694~002~~IT~USD~2.24~20110201~99991231~01~01~20101104~... (4 Replies)
Discussion started by: chumsky
4 Replies

5. UNIX for Dummies Questions & Answers

Comparing Output Date to Current System Date

Hi Guys, Anyone who knows how to compare the current date with the a file containing a date, say for example I have a file that looks like this: Command was launched from partition 0. ------------------------------------------------ Executing command in server server6 Fri Dec 16... (7 Replies)
Discussion started by: rymnd_12345
7 Replies

6. Shell Programming and Scripting

Adding days to system date then compare to a date

Hi! I am trying to read a file and every line has a specific date as one of its fields. I want to take that date and compare it to the date today plus 6 days. while read line do date=substr($line, $datepos, 8) #date is expected to be YYYYMMDD if ; then ...proceed commands ... (1 Reply)
Discussion started by: kokoro
1 Replies

7. Shell Programming and Scripting

Compare the system date with date from a text file

I get the date that's inside a text file and assigned it to a variable. When I grep the date from the file, I get this, Not After : Jul 28 14:09:57 2017 GMT So I only crop out the date, with this command echo $dateFile | cut -d ':' -f 2,4The result would be Jul 28 14:57 2017 GMT How do I... (3 Replies)
Discussion started by: Loc
3 Replies

8. SCO

Cannot use 'date -t' to set the system date and time

Hi! All, I am trying to reset the date and time since the change in time over the weekend. I cannot issue the command date -t 201703131330. The system gives me an error invalid option. This happens on my SCO OpenServer 5.0.7 and 5.0.6. Do anyone have an idea why? I even tried using... (6 Replies)
Discussion started by: trolley
6 Replies

9. UNIX for Beginners Questions & Answers

Compare date in .txt with system date and remove if it's lesser than system date

Can someone help me with the code wherein there is a file f1.txt with different column and 34 column have expiry date and I need to get that and compare with system date and if expiry date is <system date remove those rows and other rows should be moved to new file f2.txt . I don't want to delete... (2 Replies)
Discussion started by: Stuti
2 Replies

10. Answers to Frequently Asked Questions

Compare date in .txt with system date and remove if it's lesser than system date

I m working on shell scripting and I m stuck where in my .txt file there is column as expiry date and I need to compare that date with system date and need to remove all the rows where expiry date is less than system date and create a new .txt with update. (1 Reply)
Discussion started by: Stuti
1 Replies
DATE(1) 						    BSD General Commands Manual 						   DATE(1)

NAME
date -- display or set date and time SYNOPSIS
date [-ajnu] [-d date] [-r seconds] [+format] [[[[[[CC]yy]mm]dd]HH]MM[.SS]] DESCRIPTION
date displays the current date and time when invoked without arguments. Providing arguments will format the date and time in a user-defined way or set the date. Only the superuser may set the date. The options are as follows: -a Use adjtime(2) to change the local system time slowly, maintaining it as a monotonically increasing function. -a implies -n. -d date Parse the provided human-described date and time and display the result without actually changing the system clock. (See parsedate(3) for examples.) -j Parse the provided canonical representation of date and time (described below) and display the result without actually changing the system clock. -n The utility timed(8) is used to synchronize the clocks on groups of machines. By default, if timed is running, date will set the time on all of the machines in the local group. The -n option stops date from setting the time for other than the current machine. -r seconds Print out the date and time that is seconds from the Epoch. -u Display or set the date in UTC (universal) time. An operand with a leading plus (+) sign signals a user-defined format string which specifies the format in which to display the date and time. The format string may contain any of the conversion specifications described in the strftime(3) manual page, as well as any arbitrary text. A <newline> character is always output after the characters specified by the format string. The format string for the default display is: %a %b %e %H:%M:%S %Z %Y If an operand does not have a leading plus sign, it is interpreted as a value for setting the system's notion of the current date and time. The canonical representation for setting the date and time is: CC The first two digits of the year (the century). yy The second two digits of the year. If yy is specified, but CC is not, a value for yy between 69 and 99 results in a CC value of 19. Otherwise, a CC value of 20 is used. mm The month of the year, from 01 to 12. dd The day of the month, from 01 to 31. HH The hour of the day, from 00 to 23. MM The minute of the hour, from 00 to 59. SS The second of the minute, from 00 to 61. Everything but the minutes is optional. Time changes for Daylight Saving and Standard time and leap seconds and years are handled automatically. ENVIRONMENT
The following environment variables affect the execution of date: TZ The timezone to use when displaying dates. See environ(7) for more information. FILES
/etc/localtime Symlink pointing to system's default timezone information file in /usr/share/zoneinfo directory. /var/log/wtmp A record of date resets and time changes. /var/log/messages A record of the user setting the time. EXAMPLES
The command: date '+DATE: %m/%d/%y%nTIME: %H:%M:%S' will display: DATE: 11/21/87 TIME: 13:36:16 The command: date 8506131627 sets the date to ``June 13, 1985, 4:27 PM''. The command: date 1432 sets the time to 2:32 PM, without modifying the date. DIAGNOSTICS
Exit status is 0 on success, 1 if unable to set the date, and 2 if able to set the local date, but unable to set it globally. Occasionally, when timed(8) synchronizes the time on many hosts, the setting of a new time value may require more than a few seconds. On these occasions, date prints: 'Network time being set'. The message 'Communication error with timed' occurs when the communication between date and timed fails. SEE ALSO
adjtime(2), gettimeofday(2), settimeofday(2), parsedate(3), strftime(3), utmp(5), timed(8) R. Gusella and S. Zatti, TSP: The Time Synchronization Protocol for UNIX 4.3BSD. STANDARDS
The date utility is expected to be compatible with IEEE Std 1003.2 (``POSIX.2''). BSD
November 15, 2006 BSD
All times are GMT -4. The time now is 12:05 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy