Answers:
您当前的目录是.
。因此,cp /foo/fam/foo .
将文件复制到当前目录。
“一个目录向上”或当前工作目录的父目录的类似构造是两个点,即..
。(感谢@djeikyb)
因此,从/usr/house/firstfloor/basement
CD ..
开始,您将升级到/usr/house/firstfloor
。
在同一个示例中(从开始/usr/house/firstfloor/basement
,命令cd ../..
将带您到/usr/house
。
您还可以使用$PWD
with echo
获取当前目录:
echo $PWD
顺便说一句,$OLDPWD
将为您提供以前的目录。(bash
您也可以通过键入来达到此目的cd -
。)
..
将带您到当前目录的父目录。好点子。
popd
,pushd
但这正在变成一篇论文。
.
并且..
它们是文件系统级的,因此任何程序都可以接受它们。另一方面,诸如~
和的快捷方式~-
是外壳程序的一部分。
cd -
;不知道它的存在。
./代表当前目录。因此,您可以使用命令“ cp ~/anotherdir/dir2/file ./
将文件”复制到当前工作目录中。
ln -s /some/long/path/to/get/to/cake
使用第二个参数,它将把cake
符号链接直接放在当前参数中。非常适合懒惰的人。保存一个.
。
要将当前目录用作目标目录,请使用单个点' .
'
使用您的示例,您将输入: cp ~/anotherdir/dir2/file .
要查看点.
,..
并../../
在行动目录名,复制以下命令粘贴到你的终端:
mkdir a && mkdir a/b && mkdir a/b/c && mkdir a/b/c2
cd a/b/c
cp /etc/default/grub .
cp /etc/default/grub ..
cp /etc/default/grub ../c2
cd ../../
tree
tree命令的输出如下所示:
.
└── b
├── c
│ └── grub
├── c2
│ └── grub
└── grub
3 directories, 3 files
将.
在树输出的顶级代表新的当前目录a
是的祖父a/b/c
我们导航使用cd ../../
命令。在下面a
看到子目录a/b
,a/b/c
并a/b/c2
首先,我们使用以下命令在一行上创建了4个目录 &&
将多行连接在一起,。
然后,我们转到目录a/b/c
,这是以下复制命令的当前目录:
cp
)中,使用以下命令将目标设置为当前目录(c).
。..
。../c2
然后,如前所述,我们将当前目录更改为,a
并运行该tree
命令以显示下的所有目录和文件a
。
完成后,我们使用以下命令删除三个目录和文件:
cd ~/
rm -r tree
是的(如其他人所指出的那样),当前目录为“。”,这就是为什么您可以使用./script从当前目录启动program / script的原因(除非。不是PATH的一部分,否则脚本将不起作用。虽然)。使用$ PWD或$(pwd)有点过分,即使其他人提到,使用单点字符会更短,请确保:)“ ..”是父目录,请确保“ /”是根目录。还要提及的是,“ cd-”将使您进入更改cwd之前的目录(当前工作目录)。在日常工作中也很有用。单个“ cd”命令,而命令行中没有其他命令,将把您带入“〜”(家中)。
$PWD
在创建指向绝对路径的符号链接时,这并不是一个过大的杀伤力。
..
意味着目录要低一个。可以使用多次,即cd ../..