在linux中的目录中重命名最新创建的文件

时间:2013-05-27 08:01:15

标签: bash

我可以使用命令

在目录中获取最新的修改/创建文件
ls -Art | tail -n 1

我想重命名上面命令返回的文件。我怎么能这样做?

我也尝试过像这样非常简陋的事情

ls -rt | xargs | awk {'print $1'} | xargs cat >> newfile.txt   

有时它可以工作,但大多只是写一个空文件

2 个答案:

答案 0 :(得分:3)

尝试以下方法:

ls -ltr | awk '{ field = $NF }; END{ print field }' | xargs -I '{}' mv '{}' newfile.txt

答案 1 :(得分:2)

使用find识别最近修改过的文件,而不是解析ls

find /path/to/search -type f -printf ‘%TY-%Tm-%Td %TT %p\n’ | sort -r | head -n1 | xargs -I '{}' mv '{}' newfile.txt