PECL modüllerini istemler olmadan kurun


91

PHP'yi Ubuntu Natty'ye kaynaktan yükledim.

APC ve Memcache gibi ek modüller kurmak için PECL kullanmaya çalışıyorum. Bunun gibi bir şey kullanıyorum:

pecl install apc

Ancak, bir şeyleri onaylamamı isteyen istemler alıyorum.

Varsayılanları kabul etmek için pecl komutunu nasıl kullanabilirim? Bir mesaj panosuna böyle bir şey gördüm: printf "yes\n" | pecl install pecl_http. Bununla birlikte, APC durumunda bu, varsayılanın hayır olduğu şeyler için evet yanıtı verir (sanırım).

Şimdiden teşekkürler.


1
@Gordon: Bunu denedim ama ihtiyacım olan şey için bir tutamaç yok gibi görünüyor.
Obinwanne Hill

1
Varsayılan değerlerin kabul edilebilir olduğu durumlarda, etkileşimli olmayan modda PECL istemi gerekli değildir. Örneğin, bir Dockefile eklerseniz RUN pecl install apc, derleme zamanında varsayılan değerleri otomatik olarak seçersiniz.
Dereckson

Yanıtlar:


83

Aşağıdaki kod düzgün çalışıyor gibi görünüyor:

printf "\n" | pecl install apc

Apc'yi başka herhangi bir PECL paketiyle de değiştirebilirsiniz.

Şerefe.


8
Ayrıca yes | pecl install memcache, çözümünüzün varsayılanın "evet" dışında bir şey olduğu paketler için daha iyi çalıştığını varsayıyorum
Frank Farmer 9'13

1
Teşekkürler dostum, bu CircleCI
Jujhar Singh için

79

"Evet" komutu, "evet" yazmaktan daha fazlasını yapabilir; İstediğiniz her şeyi defalarca yazabilir. Varsayılanları kabul etmenin iyi bir yolu olan boş bir satır eklemek.

Sadece buna kendim ihtiyacım vardı, işte benim için iyi sonuç veren şey:

yes '' | pecl install -f apc

Giriş için teşekkürler Tom. Kodunuz olması mı gerekiyordu "yes\n" | pecl install -f apc?
Obinwanne Hill

4
@ObinwanneHill: Tom yeskomuta atıfta bulunuyordu . Bunun yararı, printfçıktıyı tekrar tekrar üretmesidir, bu da pecl yükleyicisinin komut dosyanızın printfbeklediğinden daha fazla soru sorması durumunda daha taşınabilir olmasını sağlar .
jmikola

@jmikola Oh anladım, bu komuta aşina değildim. Teşekkürler
Obinwanne Tepesi

8

Obinwanne'ın Hill cevabı benim için çivilenmişti, bu yüzden burada yeni bir şey sunmuyorum, ancak aşağıdakiler de herhangi bir süslü araç olmadan mutlak en kısa gibi görünüyor.

echo '' | pecl install apc

6
Aynı sonucu elde etmek için daha kısa bir alternatif:pecl install apc <<<''
Guss
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.