Sponsored Content
Top Forums UNIX for Dummies Questions & Answers How to compare a file by its timestamp and store in a different location whenever timestamp changes? Post 302541326 by agama on Saturday 23rd of July 2011 08:55:53 PM
Old 07-23-2011
Assuming that the flavour of UNIX you are using has a stat command, then something like this could be used to create your filename:

Code:
log=/var/log/foo.log
dt=$(stat -c %Y $log |awk '{print  strftime( "%Y%m%d%H%M%S", $1 )}')  #make the datestamp portion in YYYYMMDDHHMMSS format
archive=/archive/log/foo_$dt.log

The stat command generates the epoch timestamp for the named file and the awk script is used to format it into something useful. The %y format supported by stat isn't very filename friendly.

If you are using FreeBSD, then the stat command format is a wee bit different. On the 6.2 BSD system I have it's: stat -f %a file-name

There is a caution in the man page for stat on Linux that states that a shell may implement an internal stat command that will override the binary in /bin
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

store timestamp in a variable

I am new to Unix shell Script _________________________ db2 connect to r2pdev user bmwdevup using summer08 >>$monlog # get the current timestamp from SYSIBM.SYSDUMMY1 currenttimestamp="" echo "Run SQL select current timestamp from SYSIBM.SYSDUMMY1 with ur" >>$monlog db2 "select current... (8 Replies)
Discussion started by: regnumber
8 Replies

2. AIX

how to grep and compare timestamp in a file with the current date

I want to read a log file from a particular location.In the logfile , lines contains timestamp.I need to compare the timestamp in the logfile with the current date.If the timpestamp in the log file is less than 4 hours then i need to read the file from that location.Below is the file format.Please... (1 Reply)
Discussion started by: achu
1 Replies

3. AIX

how to grep and compare timestamp in a file with the current date

I want to read a log file from a particular location.In the log file each line starts with timestamp.I need to compare the timestamp in the logfile with the current date.If the timpestamp in the log file is less than 4 hours then i need to read the file from that location.Below is the file... (1 Reply)
Discussion started by: achu
1 Replies

4. Shell Programming and Scripting

Compare file timestamp with current date. Diff must be 1 hour.

Hello, I've created the script below to compare the content of two files with a delay of an hour. After an hour, the lines that exist in both files, will be printed and executed. The script now uses a counter to countdown 50 minutes. But what I would prefer is to check the file timestamp of... (3 Replies)
Discussion started by: taipan
3 Replies

5. Shell Programming and Scripting

Compare current time to timestamp on a file

I'm trying to compare 2 dates between current time and the timestamp on a file. The date format is mmdd Both return Apr 1 but when using if statement line 11: Apr 1: command not found error is returned #!/bin/sh log="DateLog" Current_Date=`date +%b%e` Filepmdate=`ls -l /file.txt |... (1 Reply)
Discussion started by: cillmor
1 Replies

6. Shell Programming and Scripting

Getting a relative timestamp from timestamp stored in a file

Hi, I've a file in the following format 1999-APR-8 17:31:06 1500 3 45 1999-APR-8 17:31:15 1500 3 45 1999-APR-8 17:31:25 1500 3 45 1999-APR-8 17:31:30 1500 3 45 1999-APR-8 17:31:55 1500 3 45 1999-APR-8 17:32:06 1500 3 ... (1 Reply)
Discussion started by: vaibhavkorde
1 Replies

7. Shell Programming and Scripting

Identifying files with a timestamp greater than a given timestamp

I need to be able to identify files with file timestamps greater than a given timestamp. I am using the following solution, although it appears to compare files at the "seconds" granularity and I need it at the milliseconds. When I tested my solution, it missed files that had timestamps... (3 Replies)
Discussion started by: nkm0brm
3 Replies

8. Shell Programming and Scripting

To check timestamp in logfile and display lines upto 3 hours before current timestamp

Hi Friends, I have the following logfile. Currently time in india is 07/31/2014 12:33:34 and i have the following content in logfile. I want to display only those entries which contain string 'Exception' within last 3 hours. In this case, it would be the last line only I can get the... (12 Replies)
Discussion started by: srkmish
12 Replies

9. Shell Programming and Scripting

AIX : Need to convert UNIX Timestamp to normal timestamp

Hello , I am working on AIX. I have to convert Unix timestamp to normal timestamp. Below is the file. The Unix timestamp will always be preceded by EFFECTIVE_TIME as first field as shown and there could be multiple EFFECTIVE_TIME in the file : 3.txt Contents of... (6 Replies)
Discussion started by: rahul2662
6 Replies

10. Shell Programming and Scripting

Grep lines between last hour timestamp and current timestamp

So basically I have a log file and each line in this log file starts with a timestamp: MON DD HH:MM:SS SEP 15 07:30:01 I need to grep all the lines between last hour timestamp and current timestamp. Then these lines will be moved to a tmp file from which I will grep for particular strings. ... (1 Reply)
Discussion started by: nms
1 Replies
SD_JOURNAL_GET_REALTIME_USEC(3) 			   sd_journal_get_realtime_usec 			   SD_JOURNAL_GET_REALTIME_USEC(3)

NAME
sd_journal_get_realtime_usec, sd_journal_get_monotonic_usec - Read timestamps from the current journal entry SYNOPSIS
#include <systemd/sd-journal.h> int sd_journal_get_realtime_usec(sd_journal* j, uint64_t* usec); int sd_journal_get_monotonic_usec(sd_journal* j, uint64_t* usec, sd_id128_t* boot_id); DESCRIPTION
sd_journal_get_realtime_usec() gets the realtime (wallclock) timestamp of the current journal entry. It takes two arguments: the journal context object and a pointer to a 64-bit unsigned integer to store the timestamp in. The timestamp is in microseconds since the epoch, i.e. CLOCK_REALTIME. sd_journal_get_monotonic_usec() gets the monotonic timestamp of the current journal entry. It takes three arguments: the journal context object, a pointer to a 64-bit unsigned integer to store the timestamp in, as well as a 128-bit ID buffer to store the boot ID of the monotonic timestamp. The timestamp is in microseconds since boot-up of the specific boot, i.e. CLOCK_MONOTONIC. Since the monotonic clock begins new with every reboot, it only defines a well-defined point in time when used together with an identifier identifying the boot. See sd_id128_get_boot(3) for more information. If the boot ID parameter is passed NULL, the function will fail if the monotonic timestamp of the current entry is not of the current system boot. Note that these functions will not work before sd_journal_next(3) (or related call) has been called at least once, in order to position the read pointer at a valid entry. RETURN VALUE
sd_journal_get_realtime_usec() and sd_journal_get_monotonic_usec() returns 0 on success or a negative errno-style error code. If the boot ID parameter was passed NULL and the monotonic timestamp of the current journal entry is not of the current system boot, -ESTALE is returned by sd_journal_get_monotonic_usec(). NOTES
The sd_journal_get_realtime_usec() and sd_journal_get_monotonic_usec() interfaces are available as a shared library, which can be compiled and linked to with the libsystemd-journal pkg-config(1) file. SEE ALSO
systemd(1), sd-journal(3), sd_journal_open(3), sd_journal_next(3), sd_journal_get_data(3), sd_id128_get_boot(3), clock_gettime(2), sd_journal_get_cutoff_realtime_usec(3) systemd 208 SD_JOURNAL_GET_REALTIME_USEC(3)
All times are GMT -4. The time now is 05:47 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy