Tabiki yazarken:
sudo apt-get install whatever
Size sorar:
Do you want to continue [Y/n]?
Devam etmek isteyip istemediğimi sormadan, sadece kurabileceğim bir yol var mı? Gerçekten uzam umrumda değil, fazlasıyla yeterince sahibim.
Tabiki yazarken:
sudo apt-get install whatever
Size sorar:
Do you want to continue [Y/n]?
Devam etmek isteyip istemediğimi sormadan, sadece kurabileceğim bir yol var mı? Gerçekten uzam umrumda değil, fazlasıyla yeterince sahibim.
Yanıtlar:
sudo apt-get install -y whatever
Man sayfasından ( man apt-get
):
-y, --yes, --assume-yes
Automatic yes to prompts; assume "yes" as answer to all prompts and
run non-interactively. If an undesirable situation, such as
changing a held package, trying to install a unauthenticated
package or removing an essential package occurs then apt-get will
abort. Configuration Item: APT::Get::Assume-Yes.
Apt-get için -y
veya --assume-yes
iyi çalışın (@ rizzwind'in açıkladığı gibi) ve bunun burada en iyi cevap olduğunu varsayıyorum. Bu tür etkileşimli idari işlemlerin çoğu için benzer bir komut vardır.
Bunu yapmanın başka bir güzel yolu da şöyle:
$ echo "y" | sudo apt-get install edamame_biscuit
(Edamame-biscuit'in kurmak istediğiniz (tamamlanmış) paket olduğu ve "y" nin meşru bir yanıt olduğu varsayılır; "evet" veya gerekirse başka bir metin kullanın.)
Bu yöntemin bir 'özelliği', yalnızca bir etkileşimli bilgi istemi yanlış olarak kabul ediyorsanız, bunun kırılmasıdır. Evet demek istemediğiniz bazı potansiyel olarak istenmeyen istemler varsa, sistemin sormadan ilerlemesini önlersiniz.
yes | sudo apt-get install edamame-biscuit
,. Evet, "evet" kelimesini çıktısına spam gönderen bir komuttur. Gerekirse diğer metinleri de çıktı olarak alabilirsiniz, bakınız sayfa.
yes
Komutu (varsayılan olarak) sadece harfi y
izler ve ardından boru arabelleğini doldurmak için gerektiği kadar newline izler. Kelimeyi gerçekten yazdırmak için yes
, komutu kullanmanız gerekir yes yes
.
yes
,
Her şeyden önce, mesajın neden göründüğünü anlayalım. Aslında, paket henüz yüklemediğiniz veya açıkça yüklemenizi söylediğiniz bağımlılıklara sahip değilse, apt size asla sormaz:
➜ ~ sudo apt-get -qq install xfce4-screenshooter
Selecting previously unselected package xfce4-screenshooter.
(Reading database ... 296146 files and directories currently installed.)
Preparing to unpack .../xfce4-screenshooter_1.8.1-2_amd64.deb ...
Unpacking xfce4-screenshooter (1.8.1-2) ...
Processing triggers for hicolor-icon-theme (0.13-1) ...
Processing triggers for man-db (2.6.7.1-1) ...
Processing triggers for gnome-menus (3.13.3-1) ...
Processing triggers for desktop-file-utils (0.22-1) ...
Processing triggers for mime-support (3.56) ...
Setting up xfce4-screenshooter (1.8.1-2) ...
Paketlere bağlı bir paket yüklemek istiyorsanız, şu soruyu sorarsınız:
➜ ~ sudo apt-get -q install avis
Reading package lists...
Building dependency tree...
Reading state information...
The following extra packages will be installed:
libjzlib-java libmina-java libslf4j-java
Suggested packages:
libmina-java-doc libspring-beans-java libcommons-logging-java
liblog4j1.2-java
The following NEW packages will be installed:
avis libjzlib-java libmina-java libslf4j-java
0 upgraded, 4 newly installed, 0 to remove and 14 not upgraded.
Need to get 720 kB of archives.
After this operation, 1,258 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Bu durumda bile, bu paketi yüklemek istediğinizi dolaylı olarak söyleyip söylemediğinizi sormazsınız:
➜ ~ apt-get -q install avis libjzlib-java libmina-java libslf4j-java
Reading package lists...
Building dependency tree...
Reading state information...
Suggested packages:
libmina-java-doc libspring-beans-java libcommons-logging-java
liblog4j1.2-java
The following NEW packages will be installed:
avis libjzlib-java libmina-java libslf4j-java
0 upgraded, 4 newly installed, 0 to remove and 14 not upgraded.
Inst libjzlib-java (1.1.3-1 Debian:testing [all])
Inst libslf4j-java (1.7.7-1 Debian:testing [all])
Inst libmina-java (1.1.7.dfsg-11 Debian:testing [all])
Inst avis (1.2.2-2 Debian:testing [all])
Conf libjzlib-java (1.1.3-1 Debian:testing [all])
Conf libslf4j-java (1.7.7-1 Debian:testing [all])
Conf libmina-java (1.1.7.dfsg-11 Debian:testing [all])
Conf avis (1.2.2-2 Debian:testing [all])
Ama öyleyse, kesin olarak sormamasını nasıl sağlayabilirsiniz? Rizwind cevabı aracılığıyla geçici ve komut dosyası çözümlerini kapsamalıdır (aslında, bu seçenek komut dosyalarında daha çok kullanılır), bunun yerine apt.conf
dosyanızı değiştirebilir ve şunları ekleyebilirsiniz:
APT::Get::Assume-Yes
Böyle bir şey yeterli olmalı:
echo 'APT::Get::Assume-Yes;' | sudo tee -a /etc/apt/apt.conf.d/00Do-not-ask
Not, bu, doğrulamanız gereken diğer daha tehlikeli istemlere izin vermez :
➜ ~ sudo apt-get install sonar
WARNING: The following packages cannot be authenticated!
sonar
Install these packages without verification? [y/N]
Bu nedenle yes | ...
, bu uyarı dikkate alınmayacağından, kullanılmasını önermem.
python:3.6-slim
) için alıyorum . Bunun için ayrı bir soru sormalı mıyım?
-y
Herhangi bir kütüphane kurulumuna ekleÖrneğin :sudo apt-get install -y nodejs
Örneğin :sudo apt-get install -y postgres
Örneğin :sudo apt-get install -y mongodb
Orada --force-yes as well
ve yanlışlıkla alanların dikkatli.
son dağıtımlar için değer kaybetti