gpt4 book ai didi

bash脚本: how to use array element in if statement

转载 作者:行者123 更新时间:2023-12-02 01:49:58 25 4
gpt4 key购买 nike

最简单的脚本:

#!/bin/bash

myarray=("abc" "bcd" "cde")

if ${myaaray[0]} = "abc" ;
then
echo "abc"
fi

我收到:

./a.sh: line 5: =: command not found

最佳答案

这是一个错字。 ${myaaray[0]} 应为 ${myarray[0]}。它展开为空,然后读取为

if = "abc"

到 shell,因此会出现错误,因为没有名为 = 的命令。另外,分号是无用的空语句,可以删除。仅当将 then 放在同一行时才需要它:

if command; then
do_something
fi

无论如何,您还需要告诉 shell 您想要进行字符串比较,通常使用 test 实用程序。

if test "${myarray[0]}" = "abc"; then
echo "abc"
fi

如果您需要对字符串执行一组测试,也许 case 命令很有用:

case "${myarray[0]}" in
(abc) echo "Start of the alphabet";;
(xyz) echo "End of the alphabet";;
(*) echo "Somewhere else";;
esac

关于bash脚本: how to use array element in if statement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70448764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com