我刚读了一些代码,其中包括:
mkdir ../../$something/$something_else我不知道如何解释这一点。
发布于 2019-12-14 20:46:52
它应该被理解为一种惯例,用来指没有给出实际单词的东西,因为人们认为它们是无聊的或不重要的。因为$something_else是一个占位符,就像blah一样,mkdir -p ../../$something/$something_else创建了一个目录,它的名称可以替换$something_else。如果变量$something_else设置为myDirectory (这是一个字符串),那么mkdir -p ../../$something/$something_else将创建一个名为myDirectory的新目录。
发布于 2019-12-14 21:34:22
解释它所做的最简单的方法就是展示它的作用。
考虑以下shell命令:
$ echo $PWD
/home/rick/askubuntu/subdir-A/JSON上面的echo $PWD显示我们的当前目录。
$ cd ../../; echo $PWD
/home/rick/askubuntu上面我们更改了我们的父级目录,并显示了它的名称。现在,让我们回到原来的目录,并显示它的名称:
$ cd /home/rick/askubuntu/subdir-A/JSON
$ echo $PWD
/home/rick/askubuntu/subdir-A/JSON现在您已经看到了../../所做的事情,让我们将所有这些联系在一起:
$ something=subdir-A
$ something_else=JSON2
$ mkdir ../../"$something"/"$something_else"
$ ls ../
JSON JSON2因为something=subdir-A与当前父目录相同,所以这两行是等价的:
$ mkdir ../../"$something"/"$something_else"
$ mkdir ../"$something_else"如果something=subdir-C是一个全新的父目录怎么办?那么我们使用的命令就会失败:
$ mkdir ../../"$something"/"$something_else"
mkdir: cannot create directory ‘../../subdir-C/JSON2’: No such file or directory我们需要使用-p参数告诉mkdir创建缺少的父目录:
$ something=subdir-C
$ something_else=JSON2
$ mkdir -p ../../"$something"/"$something_else"
$ ls ../../subdir-C
JSON2https://askubuntu.com/questions/1196199
复制相似问题