2011-03-23 27 views
1

目标:要提取的文件在UNIX要列出基于大小的文件在UNIX

占用更多的空间使用下面的命令列表

SSH服务器名的du/FOLDERNAME/* | grep -v'不能'| sort -nr |头-10

使用排序-nr考虑为数字和排序的反向(要获得文件占用更多的空间)

在使用grep -v“不能”,因为那里是几个文件夹,并且这些没有访问线必须分拣

下面之前被忽略是样本输出

624 /folder1/folder2/conf 
16  /folder1/folder2/error/include 
192 /folder1/folder2/error 
284 /folder1/folder2/htdocs 
264 /folder1/folder2/icons/small 
du: cannot read directory `/folder1/folder2/file1': Permission denied 
du: cannot read directory `/folder1/folder2/file3': Permission denied 

面对使用grep问题和排序命令,作为错误消息未得到过滤

回答

1

您需要使用2>&1将stderr重定向到标准输出,以便您可以清除错误消息。您还应该转义通配符,以便在远程计算机上进行扩展,而不是在本地进行扩展。

ssh serverName du /folderName/\* 2>&1 | grep -v 'cannot' | sort -nr | head -10 
+0

或者可能只是关闭stderr。无论如何,我们无法从那条消息中获得可分类的信息。 – 2011-03-23 12:56:19

0

如果关闭stderr,则不需要grep

ssh serverName du /folderName/\* 2>&- | sort -nr | head -10 

请注意通配符被转义。

相关问题