2011-11-15 41 views
58

Tôi vừa cài đặt PHP trên Ubuntu Natty từ nguồn.Cài đặt các mô-đun PECL không có lời nhắc

Tôi đang cố gắng sử dụng PECL để cài đặt các mô-đun bổ sung như APC và Memcache. Tôi đang sử dụng một cái gì đó như thế này:

pecl install apc 

Tuy nhiên, tôi nhận được lời nhắc yêu cầu tôi xác nhận mọi thứ.

Làm cách nào để sử dụng lệnh pecl để chấp nhận giá trị mặc định? Tôi thấy một cái gì đó như thế này trên một bảng tin: printf "yes\n" | pecl install pecl_http. Tuy nhiên, trong trường hợp của APC điều này sẽ trả lời có cho những thứ mà mặc định là không (tôi nghĩ).

Xin cảm ơn trước.

+1

@Gordon: Tôi đã thử điều đó nhưng dường như không có sự xử lý cho những gì tôi cần. –

+0

Đối với trường hợp các giá trị mặc định được chấp nhận, ở chế độ không tương tác, dấu nhắc PECL là không bắt buộc. Ví dụ, nếu bạn thêm vào một tập tin cài đặt 'RUN pecl 'của Dockefile, lúc xây dựng, bạn sẽ nhận được các giá trị mặc định được chọn tự động. – Dereckson

Trả lời

60

Các mã sau đây dường như làm việc ok:

printf "\n" | pecl install apc 

Bạn cũng có thể thay thế APC với bất kỳ gói PECL khác.

Chúc mừng.

+5

Tôi cũng thấy thành công với 'có | pecl cài đặt memcache' - mặc dù tôi cho rằng giải pháp của bạn hoạt động tốt hơn cho các gói mặc định là một cái gì đó khác "yes" –

+1

Cảm ơn dude, điều này thậm chí làm việc với [CircleCI] (https://circleci.com/docs/language-php) –

46

Lệnh "có" có thể làm nhiều hơn là chỉ nhập "có"; nó có thể gõ bất cứ điều gì bạn muốn, hơn và hơn. Bao gồm một dòng trống, đó là một cách tốt để chấp nhận mặc định.

Tôi chỉ cần này bản thân mình, vì vậy đây là những gì làm việc tốt cho tôi:

yes '' | pecl install -f apc 
+0

Cảm ơn bạn đã nhập, Tom. Mã của bạn có phải là '" có \ n "| pecl install -f apc' ?! –

+2

@ObinwanneHill: Tom đang đề cập đến lệnh ['yes'] (http://linux.die.net/man/1/yes). Lợi ích của việc này trên 'printf' là nó tạo ra kết quả đầu ra nhiều lần, điều này làm cho nó dễ dàng hơn khi nhắc nhở trình cài đặt pecl cho các câu hỏi bổ sung hơn dự kiến' printf' kịch bản của bạn. – jmikola

+0

@jmikola Oh tôi hiểu, không quen với lệnh đó. Cảm ơn –

2

Hill câu trả lời Obinwanne của đóng đinh nó đối với tôi, vì vậy tôi không cung cấp bất cứ điều gì mới ở đây, nhưng sau có vẻ như tuyệt đối ngắn nhất cũng không có bất kỳ công cụ ưa thích nào.

echo '' | pecl install apc 
+1

Một giải pháp thay thế ngắn hơn để đạt được kết quả tương tự là: 'pecl install apc <<<' '' – Guss

Các vấn đề liên quan