查找大于X的目录并移至新目的地


1

我想将大于100MB的所有文件夹(max-depth = 1)移动到新目的地。这是我到目前为止所得到的:

du --max-depth=1 -h --threshold=100MB | head -n-1 | awk '{print $2}' | xargs -p -0 -I {} mv {} ../new_location

不知怎的,我的结果没有被移动到新目的地,我只看到我要移动的所有文件夹的长列表,而不是它们被移动。

Answers:


3

-0到选项xargs意味着输入在即将 -分隔,不换行分离。在awk脚本中,将输出记录分隔符ORS设置为空字符\0

du --max-depth=1 -h --threshold=100MB | head -n-1 | awk 'BEGIN {ORS="\0"} {print $2}' | xargs -p -0 -I {} mv {} ../new_location
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.