所以基本上,我想运行这两个命令,但我想检查键是否已经存在。我知道如何在 bash 中执行 ifthenelse,但我不确定如何获取结果并将其存储在变量中以供我检查,以便我可以将其放入条件运算符中。例如,如果它已经存在,那么我可以跳过下载并再次添加它。
示例 1(--fetch-keys):
sudo apt-key adv --fetch-keys https://packages.microsoft.com/keys/microsoft.asc
sudo tee /etc/apt/sources.list.d/vscode.list > /dev/null <<- END
deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main
END
示例 2(--recv-keys):
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B9A06DE3
sudo tee /etc/apt/sources.list.d/inkscape.list > /dev/null <<- END
deb [arch=amd64] http://ppa.launchpad.net/inkscape.dev/stable-daily/ubuntu bionic main
END
怎么样:
我将 stderr 输入到空设备 ( 2> /dev/null ) 以隐藏在脚本中使用 apt-key list 时收到的警告。
尝试自己运行“sudo apt-key list”,这样您就可以看到输出的样子,以防您想将“grep”更改为更具选择性。
您可以将每个密钥保存在其自己的文件中并测试该文件是否存在。