是否有命令行可以从包含 5M 文件的目录中移动 1M 的文件?
我试过:
sudo mv `ls | head -1000000` <destination>
但是我收到此消息:-bash:/usr/bin/sudo:参数列表太长
谢谢。
答案1
您可以创建一个shell脚本包含单个文件的命令列表的文件。它不会很快,但这样可以避免参数列表过长的问题。
- 首先尝试少于 100 万个命令(例如 15),以检查它是否正常工作。
- 修改
/path/to/sourcedir
和/path/to/targetdir
以匹配您的实际目录。
find /path/to/sourcedir -maxdepth 1 -type f -printf "mv \"%p\" /path/to/targetdir\n" | head -n 15 > myscript
使脚本可执行
chmod ugo+x myscript
运行脚本
./myscript