我有两个目录,分别称为1
和,目录POSCARS
中有文件。当我在目录中时,POSCARS
我想只将第一个文件从目录移动POSCARS
到目录。1
1
谢谢你的建议
答案1
如果您只想将目录中的第一个文件移动到当前工作目录,则可以使用for
,因为它会按顺序循环遍历文件。将其替换/path/to/
为目录的实际路径POSCARS
,然后先使用 进行测试echo
:
for file in /path/to/POSCARS/* ; do echo mv -v -- "$file" . ; break ; done
这将找到第一个文件POSCARS
并模拟将其移动到当前工作目录。如果它显示了您想要的内容,则重新运行该命令而无需echo
实际移动文件:
for file in /path/to/POSCARS/* ; do mv -v -- "$file" . ; break ; done
mv -v --
移动文件并报告操作,然后不接受进一步的选项.
是当前工作目录break
意味着在第一次迭代后中断循环,因此在找到第一个文件后它将停止移动文件
答案2
我假设您具有适当的权限来移动相关文件。假设我在目录中,并且我想将其他目录移动到此处。
~/FirstDir$ mv POSCARS/ .
是一般命令。点 [.] 表示将其移动到这里。