gpt4 book ai didi

string - 如何在bash中的两个函数之间传递包含空格的字母数字变量?

转载 作者:行者123 更新时间:2023-12-04 05:32:16 25 4
gpt4 key购买 nike

脚本:

function insertMessage {
$1 > log.txt
}

function checkResult {
if [ $1 -eq 0 ]; then
insertMessage "$2"
else
insertMessage "$3"
fi
}

但是当我尝试:
 rm $DIR
checkResult $? 'Directory deleted ok' 'Cannot delete directory'

我只收到 Directory在 log.txt 中。似乎 bash 也考虑字符串中的空格 - 所以作为 $2唯一词 Directory .

如何解决?谢谢。

最佳答案

使用引号:

function checkResult {
if [ "$1" -eq 0 ]; then
insertMessage "$2"
else
insertMessage "$3"
fi
}

还有您的 insertMessage功能看起来很奇怪:
function insertMessage {
echo "$1" >> log.txt
}

会更有意义。

关于string - 如何在bash中的两个函数之间传递包含空格的字母数字变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12425018/

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