Skip to main content

Linux Find Command: Find Files Modified On Specific Date


There are many situations in which we have to find out all files that have been modified on a specific date using find command under Linux.


There are two ways to list files in given directory modified after given date of the current year. The latest version of GNU/find command use the following syntax:


Syntax

GNU/find latest version:
find /path/to/dir -newermt "date"
find /path/to/dir -newermt "May 13"
find /path/to/dir -newermt "yyyy-mm-dd"
## List all files modified on given date
find /path/to/dir -newermt yyyy-mm-dd ! -newermt yyyy-mm-dd -ls
### print all *.sh ###
find /path/to/dir -newermt "yyyy-mm-dd" -print -type f -iname "*.sh"
The other way of doing this works on the versions of find before v4.3.3:
touch -t 02010000 /tmp/timestamp
find /usr -newer /tmp/timestamp
then we can remove the reference file:
rm -f /tmp/stamp$$

To find out all Shell Script files (*.sh) in /home/linux/scripts that have been modified on 2013-05-01 (01/May/2013), enter:
find $HOME/scriptss -type f -name "*.sh" -newermt 2013-05-01 ! -newermt 2013-05-02 -print
Pass the -ls option to get detailed file listing:
find $HOME/scriptss -type f -name "*.sh" -newermt 2013-05-01 ! -newermt 2013-05-02 -ls


Comments

Popular posts from this blog

CentOS / Redhat : Configure CentOS as a Software Router with two interfaces

Linux can be easily configured to share an internet connection using iptables. All you need to have is, two network interface cards as follows: a) Your internal (LAN) network connected via eth0 with static ip address 192.168.0.1 b) Your external WAN) network is connected via eth1 with static ip address 10.10.10.1  ( public IP provided by ISP ) Please note that interface eth1 may have public IP address or IP assigned by ISP. eth1 may be connected to a dedicated DSL / ADSL / WAN / Cable router: Step # 1: Enable Packet Forwarding Login as the root user. Open /etc/sysctl.conf file # vi /etc/sysctl.conf Add the following line to enable packet forwarding for IPv4: net.ipv4.conf.default.forwarding=1 Save and close the file. Restart networking: # service network restart Step # 2: Enable IP masquerading In Linux networking, Network Address Translation (NAT) or Network Masquerading (IP Masquerading) is a technique of transceivin

Shell Script: Find Number Of Arguments Passed

Many times , when we create shell scripts we try to do repetitive tasks through functions. Some functions take arguments & we have to check the no. of arguments that are passed to it. Each bash shell function has the following set of shell variables: [a] All function parameters or arguments can be accessed via  $1, $2, $3,..., $N . [b]  $*  or  $@  holds all parameters or arguments passed to the function. [c]  $#  holds the number of positional parameters passed to the function. [d] An array variable called  FUNCNAME  ontains the names of all shell functions currently in the execution call stack. Example Create a shell script as follows: #!/bin/bash # Purpose: Demo bash function # -----------------------------   ## Define a function called test() test(){   echo "Function name:  ${FUNCNAME}"   echo "The number of positional parameter : $#"   echo "All parameters or arguments passed to the function: '$@'"   e