Shell将最大尺寸的文件复制到另一个文件夹

时间:2011-02-22 00:35:49

标签: linux shell

我是Linux shell的新手,我找到了获取所需文件名称的方法:

ls *.*g -S| grep -v ^d | head -1

我将为一些文件重复此操作。我试图将此文件复制到另一个目录(cp命令?)。但是下面的代码失败了。

我正在尝试这个,但它不起作用:

cp ls -S| grep -v ^d | head -1 ../directory

另外,我想知道如何遍历特定目录中的directorys。

非常感谢任何帮助。

谢谢, 布赖恩

2 个答案:

答案 0 :(得分:3)

cp $(ls *.*g -S| grep -v ^d | head -1) ../directory

答案 1 :(得分:0)

cp "$(find . -type f -name "*.*" -printf "%f:%s\n" | sort -t":" -k2 -n | awk -F":" 'END{print $1}')" ../directory

如果文件中有空格,请使用引号。如果您不想递归子目录,请添加-maxdepth 1