![](/img/trans.png)
[英]how to avoid mkdir if the directory already exists using shell script?
[英]shell function that takes directory name as it's parameter and checks whether the directory already exists
我想将目录名作为函数的参数传递,然后检查它是否存在。 这是我得到的:
#!/bin/bash
my_function() {
dir="$1"
if [ -d dir ]; then
cd dir
else
mkdir dir
fi
}
shell中变量(参数)的扩展方法是在变量名前加一个$
。 dir
是一个常量字符串, $dir
(或${dir}
)扩展为变量的内容。 要处理值中的空格,您应该仅在双引号内使用扩展,因此,
if [ -d "$dir" ]; then
mkdir -- "$dir"
等等
参见http://mywiki.wooledge.org/BashGuide/Parameters和http://mywiki.wooledge.org/WordSplitting 。
我想将目录名称作为函数的参数传递,然后检查它是否存在。 这是我得到的:
#!/bin/bash
my_function() {
dir="$1"
if [ -d dir ]; then
cd dir
else
mkdir dir
fi
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.