首页 > 解决方案 > If/Else 语句检查是否提供了参数

问题描述

我正在努力简化我的 Git 工作流程,我有一个 shell 函数,可以在提供文件名时添加、提交和推送文件。但是,我试图在函数中添加一个 if/else 语句来检查函数调用是否提供了文件名参数。这是我的代码:

#!/bin/bash

sendit (){
        local filename="$1"

        if [[ -z "$filename" ]]; then
                echo "No filename supplied."
                return 1
        else
                git add "$filename"
                read -p "Commit description: " desc
                git commit -m "$desc"
                git push origin master
        fi
}

当我运行sendit [filename]一切正常时,但是当我运行没有文件名的函数时,仍然会提示我添加提交描述而不是退出。

标签: bashgitshell

解决方案


推荐阅读