如何找到创建的内容“7月30日04:37”并将它们移至/ tmp?出了点问题:
find . -ctime "0037043007" -exec mv {} /tmp +
答案 0 :(得分:4)
请参阅GNU find手册(以及time input formats信息)。
特别是,-newerct '30-Jul-2009 04:37'
选项似乎可以完成你想要的大部分工作。
唯一的障碍是手册页暗示它适用于严格比给定时间更新的文件。这表明你需要使用绝对时间:
1248957000 = 2009-07-30 05:30:00 (TZ = US/Pacific = UTC-07:00)
-newerct @1248957000
这仍然存在如何处理严格大于语义的问题。
-newerct @1248956999 -a ! -newerct @1248957001
这有效,但无可争议地是凌乱的(假设您有从日期/时间值获取Unix时间戳的工具)。
你需要一个足够新版本的find
才能使用(GNU findutils 4.4.2是最新的)。
答案 1 :(得分:2)
for file in $(ls -lR | grep "Jul 14" | awk '{print $9}')
do
mv $file /tmp
done
答案 2 :(得分:0)
我不确定您使用“exec {} +
”语法的原因......这个怎么样:
find . -ctime "0037043007" -exec mv \{} /tmp/ \;