繁体   English   中英

shell function 以目录名为参数,判断目录是否已经存在

[英]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/Parametershttp://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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM