📄 ch17_08.htm
字号:
<HTML><!--Distributed by F --><HEAD><TITLE>[Chapter 17] 17.8 Exact File Time Comparisons </TITLE><METANAME="DC.title"CONTENT="UNIX Power Tools"><METANAME="DC.creator"CONTENT="Jerry Peek, Tim O'Reilly & Mike Loukides"><METANAME="DC.publisher"CONTENT="O'Reilly & Associates, Inc."><METANAME="DC.date"CONTENT="1998-08-04T21:38:21Z"><METANAME="DC.type"CONTENT="Text.Monograph"><METANAME="DC.format"CONTENT="text/html"SCHEME="MIME"><METANAME="DC.source"CONTENT="1-56592-260-3"SCHEME="ISBN"><METANAME="DC.language"CONTENT="en-US"><METANAME="generator"CONTENT="Jade 1.1/O'Reilly DocBook 3.0 to HTML 4.0"><LINKREV="made"HREF="mailto:online-books@oreilly.com"TITLE="Online Books Comments"><LINKREL="up"HREF="ch17_01.htm"TITLE="17. Finding Files with find"><LINKREL="prev"HREF="ch17_07.htm"TITLE="17.7 The Times that find Finds "><LINKREL="next"HREF="ch17_09.htm"TITLE="17.9 Problems with -newer "></HEAD><BODYBGCOLOR="#FFFFFF"TEXT="#000000"><DIVCLASS="htmlnav"><H1><IMGSRC="gifs/smbanner.gif"ALT="UNIX Power Tools"USEMAP="#srchmap"BORDER="0"></H1><MAPNAME="srchmap"><AREASHAPE="RECT"COORDS="0,0,466,58"HREF="index.htm"ALT="UNIX Power Tools"><AREASHAPE="RECT"COORDS="467,0,514,18"HREF="jobjects/fsearch.htm"ALT="Search this book"></MAP><TABLEWIDTH="515"BORDER="0"CELLSPACING="0"CELLPADDING="0"><TR><TDALIGN="LEFT"VALIGN="TOP"WIDTH="172"><ACLASS="SECT1"HREF="ch17_07.htm"TITLE="17.7 The Times that find Finds "><IMGSRC="gifs/txtpreva.gif"SRC="gifs/txtpreva.gif"ALT="Previous: 17.7 The Times that find Finds "BORDER="0"></A></TD><TDALIGN="CENTER"VALIGN="TOP"WIDTH="171"><B><FONTFACE="ARIEL,HELVETICA,HELV,SANSERIF"SIZE="-1">Chapter 17<BR>Finding Files with find</FONT></B></TD><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="172"><ACLASS="SECT1"HREF="ch17_09.htm"TITLE="17.9 Problems with -newer "><IMGSRC="gifs/txtnexta.gif"SRC="gifs/txtnexta.gif"ALT="Next: 17.9 Problems with -newer "BORDER="0"></A></TD></TR></TABLE> <HRALIGN="LEFT"WIDTH="515"TITLE="footer"></DIV><DIVCLASS="SECT1"><H2CLASS="sect1"><ACLASS="title"NAME="UPT-ART-5420">17.8 Exact File Time Comparisons </A></H2><PCLASS="para">One problem with <EMCLASS="emphasis">find</EM>'s<SPANCLASS="link">time operators (<ACLASS="linkend"HREF="ch17_05.htm"TITLE="Searching for Old Files ">17.5</A>, <ACLASS="linkend"HREF="ch17_07.htm"TITLE="The Times that find Finds ">17.7</A>)</SPAN>(<EMCLASS="emphasis">-atime</EM> and itsbrethren) is that they don't allow very exact comparisons. They onlyallow you to specify time to within a day. Sometimes that's just notgood enough. You think that your system was corrupted at roughly 4 p.m.yesterday (March 20); you want to find any files that weremodified after that point, so you can inspect them. Obviously, you'dlike something more precise than "give me all the files that weremodified in the last 24 hours."</P><PCLASS="para"><ACLASS="indexterm"NAME="AUTOID-18786"></A><ACLASS="indexterm"NAME="AUTOID-18788"></A>Some versions of<SPANCLASS="link"><EMCLASS="emphasis">touch</EM> (<ACLASS="linkend"HREF="ch21_07.htm"TITLE="Setting File Modification Time with touch ">21.7</A>)</SPAN>,and other freely available commands like it,can create a filewith an arbitrary timestamp. That is, you can use <EMCLASS="emphasis">touch</EM> tomake a file that's backdated to any point in the past (or, for thatmatter, postdated to some point in the future). This feature,<ACLASS="indexterm"NAME="UPT-ART-5420-IX-FIND-COMMAND-NEWER-OPTION-NEWER"></A>combined with <EMCLASS="emphasis">find</EM>'s <EMCLASS="emphasis">-newer</EM> operator, lets you makecomparisons accurate to one minute or less.</P><PCLASS="para">For example, to create a file dated 4 p.m., March 20, give thecommand:</P><PCLASS="para"><TABLECLASS="screen.co"BORDER="1"><TR><THVALIGN="TOP"><PRECLASS="calloutlist"><ACLASS="co"HREF="ch21_02.htm"TITLE="21.2 A Better Place for Temporary Files: /tmp ">/tmp</A> </PRE></TH><TDVALIGN="TOP"><PRECLASS="screen">% <CODECLASS="userinput"><B>touch 03201600 /tmp/4PMyesterday</B></CODE></PRE></TD></TR></TABLE></P><PCLASS="para">Then to find the files created after this, give the command:</P><PCLASS="para"><BLOCKQUOTECLASS="screen"><PRECLASS="screen">% <CODECLASS="userinput"><B>find . -newer /tmp/4PMyesterday -print</B></CODE></PRE></BLOCKQUOTE></P><PCLASS="para">What about "older" files? Older files are "not newer" files, and<EMCLASS="emphasis">find</EM> has a convenient NOT operator (<CODECLASS="literal">!</CODE>) for just this purpose.So let's say that you want to find files that were createdbetween10:46 a.m. on July 3, 1982, and 9:37 p.m. on August 4, 1985. You could use thefollowing commands:</P><PCLASS="para"><BLOCKQUOTECLASS="screen"><PRECLASS="screen"> % <CODECLASS="userinput"><B>touch 0703104682 /tmp/file1</B></CODE>% <CODECLASS="userinput"><B>touch 0804213785 /tmp/file2</B></CODE>% <CODECLASS="userinput"><B>find . -newer /tmp/file1 ! -newer /tmp/file2 -print</B></CODE>% rm /tmp/file[12]</PRE></BLOCKQUOTE></P><DIVCLASS="sect1info"><PCLASS="SECT1INFO">- <SPANCLASS="authorinitials">ML</SPAN></P></DIV></DIV><DIVCLASS="htmlnav"><P></P><HRALIGN="LEFT"WIDTH="515"TITLE="footer"><TABLEWIDTH="515"BORDER="0"CELLSPACING="0"CELLPADDING="0"><TR><TDALIGN="LEFT"VALIGN="TOP"WIDTH="172"><ACLASS="SECT1"HREF="ch17_07.htm"TITLE="17.7 The Times that find Finds "><IMGSRC="gifs/txtpreva.gif"SRC="gifs/txtpreva.gif"ALT="Previous: 17.7 The Times that find Finds "BORDER="0"></A></TD><TDALIGN="CENTER"VALIGN="TOP"WIDTH="171"><ACLASS="book"HREF="index.htm"TITLE="UNIX Power Tools"><IMGSRC="gifs/txthome.gif"SRC="gifs/txthome.gif"ALT="UNIX Power Tools"BORDER="0"></A></TD><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="172"><ACLASS="SECT1"HREF="ch17_09.htm"TITLE="17.9 Problems with -newer "><IMGSRC="gifs/txtnexta.gif"SRC="gifs/txtnexta.gif"ALT="Next: 17.9 Problems with -newer "BORDER="0"></A></TD></TR><TR><TDALIGN="LEFT"VALIGN="TOP"WIDTH="172">17.7 The Times that find Finds </TD><TDALIGN="CENTER"VALIGN="TOP"WIDTH="171"><ACLASS="index"HREF="index/idx_0.htm"TITLE="Book Index"><IMGSRC="gifs/index.gif"SRC="gifs/index.gif"ALT="Book Index"BORDER="0"></A></TD><TDALIGN="RIGHT"VALIGN="TOP"WIDTH="172">17.9 Problems with -newer </TD></TR></TABLE><HRALIGN="LEFT"WIDTH="515"TITLE="footer"><IMGSRC="gifs/smnavbar.gif"SRC="gifs/smnavbar.gif"USEMAP="#map"BORDER="0"ALT="The UNIX CD Bookshelf Navigation"><MAPNAME="map"><AREASHAPE="RECT"COORDS="0,0,73,21"HREF="../index.htm"ALT="The UNIX CD Bookshelf"><AREASHAPE="RECT"COORDS="74,0,163,21"HREF="index.htm"ALT="UNIX Power Tools"><AREASHAPE="RECT"COORDS="164,0,257,21"HREF="../unixnut/index.htm"ALT="UNIX in a Nutshell"><AREASHAPE="RECT"COORDS="258,0,321,21"HREF="../vi/index.htm"ALT="Learning the vi Editor"><AREASHAPE="RECT"COORDS="322,0,378,21"HREF="../sedawk/index.htm"ALT="sed & awk"><AREASHAPE="RECT"COORDS="379,0,438,21"HREF="../ksh/index.htm"ALT="Learning the Korn Shell"><AREASHAPE="RECT"COORDS="439,0,514,21"HREF="../lrnunix/index.htm"ALT="Learning the UNIX Operating System"></MAP></DIV></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -