Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 3 Jan 2012 14:49:02 -0600
From:      Dan Nelson <dnelson@allantgroup.com>
To:        Polytropon <freebsd@edvax.de>
Cc:        FreeBSD Questions <freebsd-questions@freebsd.org>
Subject:   Re: Exact timestamp for sorting and renaming files according to creation order
Message-ID:  <20120103204902.GG24192@dan.emsphone.com>
In-Reply-To: <20120103211150.41f1934d.freebsd@edvax.de>
References:  <20120103211150.41f1934d.freebsd@edvax.de>

next in thread | previous in thread | raw e-mail | index | archive | help
In the last episode (Jan 03), Polytropon said:
> For a sorting script, I'm currently searching for a method to get file
> creation date and time as exactly as possible.  The best resolution I
> could get was seconds.  In case more than one file is created within the
> same second, it doesn't work precisely enough.  It should work from sh
> script.
> 
> For the purpose of preparing the sort list (that will be sorted and then
> be used as a template for renaming the files with a prefix and a counter),
> I'm using the "stat" program which creates output like this:
> 
> 	% stat -f "%N %B" -t "%Y-%m-%d_%H:%M:%S" 1.txt
> 	1.txt 2012-01-03_12:12:12
> 
> It's also possible to use the Epoch time format, but it doesn't provide a
> solution better than seconds:
> 
> 	% stat -f "%N %B" -t "%s" 1.txt
> 	1.txt 1325589132

If you ask for the date to be printed in "float" (F) format, it gives more
precision.  The default is unsigned int (U) format.

% stat -f "%N %FB" /COPYRIGHT 
/COPYRIGHT 1306190895.046721049

> I've read the manuals for stat as well as for strftime (which is the
> facility stat's -t parameter addresses), but found nothing that is more
> precise than seconds.
> 
> Does anyone have a suggestion how to precisely determine the order files
> have been created?

-- 
	Dan Nelson
	dnelson@allantgroup.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120103204902.GG24192>