【发布时间】:2022-01-12 21:30:12
【问题描述】:
我一直在努力用 sed 定义变量值,将值与“6.7”进行比较,然后写入文件。
这个值是一个版本,所以它总是一个 int 或一个 double。但是我的代码似乎不起作用:
FILE="user/gradle-6.7-new"
VERSION=$(sed -n '/^distributionUrl=/s/.*gradle-\([^-]*\)-.*/\1/p' $FILE)
if [[ $VERSION > 6.7 ]]
then
$VERSION > /tmp/version_file
fi
谢谢。
【问题讨论】:
-
你能在文件中添加包含版本的行吗?
-
@Fravadona 这是
$FILE变量 -
在shellcheck.net查看你的代码,你会看到原因
-
@Fravadona
Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.和^-- SC2072 (error): Decimals are not supported. Either use integers only, or use bc or awk to compare.我认为这与我无关。如果您发现有问题,能否提出更改建议? -
Bash、sh 还是 shell?请阅读相应标签的说明!