我有一个包含大量文件的目录,我需要按所有者将它们分开。我的直觉是将输出管道ls
mv
,但我已经看到不建议这样做,因为文件名可能包含特殊字符。无论如何,我能想到的最接近的是:
ls -l | grep OWNER | find regex_for_filename | mv ../
但这行不通。
注意 - 我确实对目录中的文件有一个可靠的正则表达式,但所有权分散。
find -maxdepth 1 -user username -exec mv {} ../ ;
如果需要子目录中的文件,请省略最大深度。