我正在编写一个脚本,以确定本地的neovim版本是否低于所需的版本。我在PopOS 22.04上使用bash。
该脚本将用于开发环境设置,lunarvim要求Neovim版本为0.8.0+。
脚本的预期最终结果将完成三件事:
我尝试过各种迭代,使用ansible,dpkg,neovim -v,甚至试图缩短新-v的输出。任何帮助都是非常感谢的。
下面的bash版本是我尝试过的比较的最新变体。如果没有安装新nvim,我就会遇到这个错误,它将在第三行出现错误,并使用nvim:命令command (预期的错误)。之后,它将打印出最后的echo语句(意外输出)。
#!/bin/bash
has_nvim=$(command -v nvim >/dev/null)
nvim_version=$(nvim --version | head -1 | grep -o '[0-9]\.[0-9]')
if ! $has_nvim; then
echo "Nvim is not installed"
elif [ $(echo $nvim_version >= 0.9 | bc -l) ]; then
echo "Wrong version of Nvim is installed"
sudo apt remove neovim -y
else
echo "Nvim version 0.9 or greater is installed"
fi发布于 2022-11-14 09:34:09
如果未安装Nvim版本,则必须添加if/else情况下才能获得Nvim版本。
代码的固定版本:
#!/bin/bash
command -v nvim >/dev/null
if [[ $? -ne 0 ]]; then
echo "Nvim is not installed"
else
nvim_version=$(nvim --version | head -1 | grep -o '[0-9]\.[0-9]')
if (( $(echo "$nvim_version < 0.9 " |bc -l) )); then
echo "Wrong version of Nvim is installed"
sudo apt remove neovim -y
else
echo "Nvim version 0.9 or greater is installed"
fi
fihttps://stackoverflow.com/questions/74428539
复制相似问题