Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 如何在以名称作为输入的目录中创建目录?_Bash - Fatal编程技术网

Bash 如何在以名称作为输入的目录中创建目录?

Bash 如何在以名称作为输入的目录中创建目录?,bash,Bash,例如,如果我作为输入获取filename和dirname,并且我想在dirname处创建名为filename的新目录 我怎么做 我尝试使用mkdir来创建目录,但它只在当前目录中创建目录(不允许我选择如何创建新目录)。不确定您是否正在查找此目录,您可以尝试一下,并告诉我这是否对您有帮助 cat script.ksh filename="$1" directory="$2" if [ ! -d "$directory" ] then mkdir -p "$directory/$f

例如,如果我作为输入获取
filename
dirname
,并且我想在
dirname
处创建名为
filename
的新目录

我怎么做


我尝试使用
mkdir
来创建目录,但它只在当前目录中创建目录(不允许我选择如何创建新目录)。

不确定您是否正在查找此目录,您可以尝试一下,并告诉我这是否对您有帮助

cat script.ksh
filename="$1"
directory="$2"

if [ ! -d "$directory" ]
then
        mkdir -p "$directory/$filename"
else
        echo "There seems to be directory already present, please enter some other directory name."
fi
man mkdir


mkdir-p“$dirname/$filename”
?@user000001您能解释一下为什么我需要在这里使用标志
p
-p
告诉
mkdir
如果前导目录不存在,就创建它们。例如,如果
foo
不存在,那么
mkdir foo/bar
将失败,但是
mkdir-p foo/bar
将在尝试创建
bar
之前创建
foo
@chepner谢谢:)Hye,你能解释一下你试图用
presence
做什么吗,在脚本的参数是否存在的情况下,对给定的directory by person进行检查,如果是,则会抛出一条消息,您应该像
script.ksh second\u directory first\u directory那样运行它“如果
first_directory`存在,那么它将不会运行,如果您有任何疑问,请告诉我。不要像这样使用
ls
。只需使用
if[!-d“$directory”]测试目录即可;然后
mkdir-p“$directory/$filename”;其他的fi`.@RavinderSingh13谢谢:)它起作用了,现在我明白了。
   -p, --parents
          no error if existing, make parent directories as needed