重命名'。' Ubuntu中的文件

我使用rsync下载了一个文件,并意外地将它提供为“。”。 (我以为是下载到的目录)。 所以它下载了多gig文件,但是把它命名为'。'。

drwxr-sr-x 2 root apache 4096 May 7 00:42 . drwxr-sr-x 7 me apache 4096 May 7 00:25 .. -rw-r--r-- 1 1006 1006 2008805206 Apr 5 04:49 . -rw------- 1 root apache 1675 May 7 00:25 somefile -rw------- 1 root apache 392 May 7 00:26 anotherfile.txt 

如何重命名2GB +'。 文件有意义。 没有我做的似乎工作(我试过mv,重命名等),但他们都说

 Device or resource busy 

你可以使用这个mv:

 mv ./.[[:blank:]]* myfile 

否则试试这个发现:

 find . -type f -maxdepth 1 -name '. *' -exec mv '{}' myfile \; 

是的,它是超级用户的问题。 但是我在其他地方找到了解决办法,所以谢谢大家的努力。 我们可以这样做:

find . -type f | (let i=0; while read f; do mv "$f" "$f"-$i ; let i=$i+1; done)

不是最优雅的方式,也可能非常不安全(因为没有撤消)。

从它所在的目录中输入。

 mv ./. newfile