我想将最后的动机日期附加到将要复制的FileName 我只知道如何将当前日期附加到文件中,例如:
find -name *.log -exec cp {} {}__$(date "+%F")__bak \;
和test.log - > test.log__2012.12.24__bak
我想要test.log - > test.log __ {last_mofigy_date} __ bak
但是如何将最后修改日期附加到fileName,最好是在一个语句中完成
答案 0 :(得分:0)
一种方式:
$ for file in $(find . -name *.log )
> do
> x=$(stat -c %y $file)
> echo cp $file ${file}_${x%% *}_bak
> done
此代码段将显示已形成的cp
个命令集。如果正确,请删除回显并运行它以复制文件。
<强>更新强> 使用find和exec的另一种方法:
find . -name *.log -exec bash -c 'x={} ; y=$(stat -c %y $x); echo cp $x ${x}_${y%% *}_bak ' \;