我正在使用运行几个步骤的小脚本配置一个 vagrantbox。
大多数正在表演apt-get -y -qq install
和update
config.vm.provision "shell", privileged: false, inline: <<-SHELL
sh 050_Certificats.sh
sh 070_Utilitaires.sh
sh 100_JDK.sh "17"
sh 150_Postgresql-Postgis.sh "15" "3"
sh 200_NodeJS-Angular.sh "16"
sh 250_ELK.sh "7.x"
sh 300_Kafka.sh "3.4.0" "2.12"
sh 350_Geoserver.sh "2.23.1"
SHELL
#!/bin/bash
echo "050 : Installation des certificats et mise à jour"
sudo apt-get -y -qq install gnupg2 wget ca-certificates
sudo apt-get -y -qq update
但是这些apt-get -y -qq install
语句在输出上并没有保持沉默(apt-get -y -qq update
是......)。我想避免通过以下方式终止我的陈述> /dev/null
:
==> default: Running provisioner: shell...
default: Running: inline script
default: 050 : Installation des certificats et mise à jour
default: dpkg-preconfigure: unable to re-open stdin: No such file or directory
default: Selecting previously unselected package gnupg2.
default: (Reading database ...
(Reading database ... 65%abase ... 5%
default: (Reading database ... 70%
default: (Reading database ... 75%
default: (Reading database ... 80%
default: (Reading database ... 85%
default: (Reading database ... 90%
default: (Reading database ... 95%
(Reading database ... 68876 files and directories currently installed.)
default: Preparing to unpack .../gnupg2_2.2.27-2+deb11u2_all.deb ...
default: Unpacking gnupg2 (2.2.27-2+deb11u2) ...
default: Setting up gnupg2 (2.2.27-2+deb11u2) ...
default: Processing triggers for man-db (2.9.4-2) ...
-q
controlsapt-get
的输出,但包安装中还涉及许多其他程序,所有这些程序都可以产生输出:dpkg
自身、维护者脚本等。您可以通过禁用其进度信息来减少生成的输出量
dpkg
:有关详细信息,请参阅shell 中 apt-get 的日志输出。
顺便说一句,您应该在尝试安装或升级任何东西
apt-get update
之前先运行。