在bash中匹配变量的正确语法是什么?

拉耶纳穆卡米

在bash中匹配变量的正确语法是什么?

#!/bin/bash
# test1.sh

say_hello()
{
    if [ "$1" = true ]; then
        echo "hello"
    else
        echo "goodbye"
    fi
}

say_hello


$ sh test1.sh true
> goodbye

如果删除该功能,则它将按预期运行。

#!/bin/bash

# test2.sh
if [ "$1" = true ]; then
    echo "hello"
else
    echo "goodbye"
fi


$ sh test2.sh true
> hello

我不确定第一个脚本的语法有什么问题。

大家解决并解释了,谢谢您教我。

hek2mgl

bash中的函数具有自己的位置参数列表-传递给该函数的参数。

与其他编程语言一样,您需要将参数从主脚本传递给函数:

say_hello()
{
    if [ "$1" = "true" ]; then
        echo "hello"
    else
        echo "goodbye"
    fi
}

say_hello "$1"

顺便说一句,在这种情况下"true"它只是一个字符串,而不是其他编程语言中布尔值我只想表达一下。


另一件事,您#!/bin/bash在shebang行中使用,但是您使用调用了脚本sh script.sh虽然在某些系统中/bin/sh是的链接/bin/bash,但不一定必须如此。即使这样,bash仍会识别出它已开始/bin/sh并在兼容模式下运行。如果要使用bash调用脚本,请使用bash script.sh

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PATH中for循环变量的正确语法是什么?

来自分类Dev

访问结构变量的正确语法是什么?

来自分类Dev

bash中的@(... | ... | ...)语法是什么?

来自分类Dev

使用ES6语法在Node 5.9中进行变量交换的正确方法是什么?

来自分类Dev

在PostgreSQL中涉及变量名称的字符串比较查询的正确语法是什么?

来自分类Dev

bash中if [[-n variable]]语法是什么

来自分类Dev

局部变量的正确JSDoc语法是什么?

来自分类Dev

bash多行Heredoc(带有Sed)的正确语法是什么?

来自分类Dev

bash多行Heredoc(带有Sed)的正确语法是什么?

来自分类Dev

select的正确语法是什么?

来自分类Dev

LIKE的正确语法是什么?

来自分类Dev

查询的正确语法是什么

来自分类Dev

模式匹配中byte_size的语法是什么?

来自分类Dev

将变量与查询结果中的第 n 行进行比较时,MySQL IF 语句的正确语法是什么?

来自分类Dev

Go中内部结构文字的正确语法是什么?

来自分类Dev

ractive中的条件部分的正确语法是什么?

来自分类Dev

枚举中的字符文字的别名的正确语法是什么?

来自分类Dev

F#中RavenDB Search方法的正确语法是什么

来自分类Dev

C#中for循环的正确语法是什么?

来自分类Dev

MailChimp API 3.0中“时间框架”的正确语法是什么

来自分类Dev

在Rust中返回函数的正确语法是什么?

来自分类Dev

在Python中连接多个布尔检查的正确语法是什么?

来自分类Dev

MySQL中针对IF和THEN的正确语法是什么?

来自分类Dev

NSIS脚本中SetOutPath的正确语法是什么?

来自分类Dev

YQL结果中SELECT语句的正确语法是什么?

来自分类Dev

在Swift中创建对象数组的正确语法是什么?

来自分类Dev

在Ansible剧本中搜索和替换的正确语法是什么?

来自分类Dev

在PHP中访问对象属性的正确语法是什么?

来自分类Dev

MySQL 中 ALTER TABLE 的正确语法是什么?

Related 相关文章

  1. 1

    PATH中for循环变量的正确语法是什么?

  2. 2

    访问结构变量的正确语法是什么?

  3. 3

    bash中的@(... | ... | ...)语法是什么?

  4. 4

    使用ES6语法在Node 5.9中进行变量交换的正确方法是什么?

  5. 5

    在PostgreSQL中涉及变量名称的字符串比较查询的正确语法是什么?

  6. 6

    bash中if [[-n variable]]语法是什么

  7. 7

    局部变量的正确JSDoc语法是什么?

  8. 8

    bash多行Heredoc(带有Sed)的正确语法是什么?

  9. 9

    bash多行Heredoc(带有Sed)的正确语法是什么?

  10. 10

    select的正确语法是什么?

  11. 11

    LIKE的正确语法是什么?

  12. 12

    查询的正确语法是什么

  13. 13

    模式匹配中byte_size的语法是什么?

  14. 14

    将变量与查询结果中的第 n 行进行比较时,MySQL IF 语句的正确语法是什么?

  15. 15

    Go中内部结构文字的正确语法是什么?

  16. 16

    ractive中的条件部分的正确语法是什么?

  17. 17

    枚举中的字符文字的别名的正确语法是什么?

  18. 18

    F#中RavenDB Search方法的正确语法是什么

  19. 19

    C#中for循环的正确语法是什么?

  20. 20

    MailChimp API 3.0中“时间框架”的正确语法是什么

  21. 21

    在Rust中返回函数的正确语法是什么?

  22. 22

    在Python中连接多个布尔检查的正确语法是什么?

  23. 23

    MySQL中针对IF和THEN的正确语法是什么?

  24. 24

    NSIS脚本中SetOutPath的正确语法是什么?

  25. 25

    YQL结果中SELECT语句的正确语法是什么?

  26. 26

    在Swift中创建对象数组的正确语法是什么?

  27. 27

    在Ansible剧本中搜索和替换的正确语法是什么?

  28. 28

    在PHP中访问对象属性的正确语法是什么?

  29. 29

    MySQL 中 ALTER TABLE 的正确语法是什么?

热门标签

归档