我现在在OSX终端,并尝试将大量文件从~/Desktop/dir/
移动到~/Desktop/dir/dir2
。
命令
mv *.* ~/Desktop/dir/dir2
不起作用。
答案 0 :(得分:6)
你得到"too many argument"
,因为~/Desktop/dir/
中的文件可能太多了,命令行上的glob匹配模式允许这些文件。
要将所有文件从~/Desktop/dir/
移至~/Desktop/dir/dir2
,请改用此find
:
find ~/Desktop/dir/ -type f -execdir mv '{}' ~/Desktop/dir/dir2 \;
或者移动包括文件和目录在内的所有内容:
cd ~/Desktop/dir/
find . -path './dir2' -prune -o ! -name . -exec mv '{}' ./dir2 \;
即。 dir2
和.
以外的所有内容都移至~/Desktop/dir/dir2
答案 1 :(得分:0)
*.*
匹配在第二个或更远位置有点的所有文件名。它不匹配没有点的文件名。相反,使用*
将匹配所有不以点开头的文件名。