2014-11-24 80 views
1

我现在在OSX终端并尝试将大量文件从~/Desktop/dir/移动到~/Desktop/dir/dir2OSX终端命令移动目录中的所有文件

命令

mv *.* ~/Desktop/dir/dir2 

不起作用。

+1

你得到了什么错误?你从哪个目录运行'mv'命令?试图从〜/桌面/目录mv的 – anubhava 2014-11-24 05:52:22

+1

。错误是“太多的参数” – 2014-11-24 06:20:53

回答

4

你得到"too many argument",因为~/Desktop/dir/中有太多的文件可以通过命令行上的glob匹配模式获得。

要将所有文件移动从~/Desktop/dir/~/Desktop/dir/dir2使用本find代替:

find ~/Desktop/dir/ -type f -execdir mv '{}' ~/Desktop/dir/dir2 \; 

或移至一切,包括文件和目录的使用方法:比dir2其他

cd ~/Desktop/dir/ 
find . -path './dir2' -prune -o ! -name . -exec mv '{}' ./dir2 \; 

即与.移动一切~/Desktop/dir/dir2

+0

你从哪里看到OP有“太多参数”错误? – trojanfoe 2014-11-24 07:59:00

+0

@trojanfoe:这是OP对我上面的问题的回应。 – anubhava 2014-11-24 08:42:28

+0

啊是的;错过了。 – trojanfoe 2014-11-24 08:44:25

0

*.*匹配所有在第二个或更多位置有点的文件名。它不会匹配没有点的文件名。相反,使用*会匹配所有不以点开头的文件名。

+0

而且'dir2'可能需要存在... – trojanfoe 2014-11-24 07:58:13

相关问题