在以下结构中,有一个父目录K
和三个子目录,D
分别H
位于B
其正下方,我的当前目录是 D。我需要从那里H
作为 的子目录移动B
。可以使用命令来完成此mv
操作,而不需要先 cd 进入父目录K
,这是不允许的(这是 Python 3 的入门课程)?我已经尝试过以下操作:
mv K/H K/B/
但收到错误消息,可能是因为不允许使用多余的目录。我也尝试过
mv /H /B/
但同样缺乏成功......
更新:由于某种原因,我无法向这个由我自己发起的线程添加评论,所以我选择以这种方式发表评论。 Steeldriver 的评论给了我成功完成摆在我面前的任务所需的灵感。我使用的命令是类型
mv ../H ../B/
而不是类型
mv ../K/H ../K/B/
亨利
答案1
如果路径以 开头/
,则它从根目录(即没有父目录的目录)开始。如果路径不以 开头/
,则从当前目录开始。
有两种特殊的目录名:.
始终指当前目录,..
始终指当前目录的父目录。因此,如果您位于D
which 的子目录中K
,那么您可以引用K
as ..
。如果您在其中,D
则 plain表示CalledK
的子目录,这不是您想要的。D
K
因此您正在寻找的命令是
mv ../K/H ../K/B/
您也可以使用绝对路径,但必须提供从根开始的整个路径。例如,如果K
实际上是/home/henri/exercises/1/K
那么你可以写
mv /home/henri/exercises/1/K/H /home/henri/exercises/1/K/B/
1从技术上讲,根目录实际上是它自己的父目录。