change file time in selected directories 

Usage 

cd /usr
touch 0101000000 * .*; find . -name '*' -type d -print | xargs -i echo touch 0101000000 '{}/* {}/.*' | sh -x

Help 

touch MMDDhhmm[YY] FILES...

no recursive option for touch!

Trying History 

[Note]

should not just change on /, 'cause all files including mounted volumes will be affected. What's worse, it will dive into directories such as /dev, /proc which is not supposed to be touched.

find . -name '*' -type d -print | xargs -ti touch 0101000000 '{}/*'

shows ok, but don't work. well, I just found out that actually it create the file '*' !

delete them 

set -f dir * * find / -name '*' !! | xargs rm

Link's time can't be changed! 

Symptom 

# touch 0101000000 libvga.so.1
# dir !$
dir libvga.so.1
lrwxrwxrwx   1 root     root           16 Sep 25 14:01 libvga.so.1 -> libvga.so.1.2.13*
# touch -am 0101000000 !$
touch -am 0101000000 libvga.so.1
# !di
dir libvga.so.1
lrwxrwxrwx   1 root     root           16 Sep 25 14:01 libvga.so.1 -> libvga.so.1.2.13*