gpt4 book ai didi

linux - 我在 bash 中遇到“没有这样的文件或目录”错误,但它似乎并没有在文件上失败

转载 作者:太空宇宙 更新时间:2023-11-04 04:37:39 25 4
gpt4 key购买 nike

我已经运行我的代码一段时间了,似乎找不到失败的原因,因为它在第 10 行失败,显然是 if 语句,但它正确地找到了 line 的值。

#!/bin/bash
#a script that reads the largest number from a file

file="$1"
largest=""
while IFS= read -r line
do
if("$line" > "$largest")
then
"$largest"="$line"
fi
done <"$file"
echo "$largest"

最佳答案

这是不正确的:

if("$line" > "$largest")
then
"$largest"="$line"
fi

更改为:

if [ "$line" -gt "$largest" ]
then
largest="$line"
fi

首先,正如评论中指出的,>是一个重定向运算符,bash正在尝试运行“$line”命令。括号不是测试运算符,方括号是。

最后,“$largest” 作为赋值目标是不正确的。 $ 告诉 bash 提供变量的值,我们希望分配给 largest,而不是 largest 的 VALUE。

关于linux - 我在 bash 中遇到“没有这样的文件或目录”错误,但它似乎并没有在文件上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46060490/

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