mong đợi là một mô-đun được sử dụng cho các ứng dụng con đẻ trứng và kiểm soát chúng. Tôi quan tâm đến python/ruby.Tôi có thể sử dụng mong đợi trên các cửa sổ mà không cần cài đặt Cygwin không?
Trả lời
Ghi chú trong file wexpect.py
(lỗi chính tả không thay đổi và làm nổi bật thêm)
Wexpect là một cảng pexpext cho Windows. Vì python dành cho Windows thiếu các mô-đun cần thiết (pty, tty, select, termios, fctnl và resource) để chạy pexpect, cần tạo một back-end thực hiện bất kỳ chức năng nào được sử dụng dựa trên các mô-đun này . Wtty.py là mặt sau này. Trong bảng điều khiển thế giới Windows không đồng nhất. Họ có thể sử dụng các hàm đầu vào và đầu ra mức thấp hoặc cao và để xử lý chính xác cả hai trường hợp hai quy trình con được tạo ra cho instacne của Spawn, với một con intermidate có thể đọc liên tục từ bảng điều khiển và gửi dữ liệu đó qua một đường ống đến một thể hiện của wtty. Spawner.py không thể đọc được và đường ống dữ liệu.
tôi đã rời như nhiều mã còn nguyên vẹn như tôi có thể và cũng đã cố gắng rời khỏi như nhiều ý kiến nguyên vẹn là có thể (espicially cho các chức năng chưa được thay đổi) rất nhiều các ý kiến sẽ được gây hiểu lầm trong mối quan hệ của họ để os cụ thể chức năng. Ngoài ra, chức năng sendcontrol và sendeof được unimplemnted tại thời gian này, như tôi không thể tìm thấy phiên bản Windows có ý nghĩa của các chức năng này.
Ngoài ra, bảng điều khiển không có bộ mô tả liên quan đến fild trên Windows, do đó, biến toàn cục child_fd sẽ luôn là Không.
Sử dụng Pexpect https://github.com/pexpect/pexpect
"Pexpect là Python tinh khiết" vì vậy nó sẽ chạy bất cứ nơi nào, mà không cần Cygwin quá,
chỉnh sửa: Pexpect phụ thuộc vào mô-đun pty mà hiện chỉ có sẵn cho Linux, như vậy là Nik đề nghị bạn nên sử dụng wexpect là một cổng của pexpect
Phiên bản làm việc mới nhất của wexpect sống tại http://sage.math.washington.edu/home/goreckc/sage/wexpect/
Hy vọng rằng nó sẽ được sáp nhập ngược dòng sớm.
winpexpect
là cổng gốc của pexpect
đối với Windows. Nó có thể được tìm thấy ở đây:
Tôi biết đó là một bài cũ, nhưng tôi đã sử dụng thành công Pexpect dưới Cygwin. Hiện tại không có cách nào khác do sự cố tương thích POSIX trong Windows.
Một điều khác: WExpect hoạt động như Pexpect, infact nó yêu cầu Cygwin! Tại thời điểm này, PExpect là một lựa chọn tốt hơn.
Hy vọng điều này sẽ giúp
Fabio
Bạn có thể sử dụng cửa sổ CMD nhắc.
Bạn cần cài đặt python trong cửa sổ của mình.
mở dấu nhắc cmd và thực hiện lệnh dưới đây.
C:\Users\xxx>pip install pexpect
(nếu bạn đã cài Python Path trong biến hệ thống)
hoặc
C:\Users\xxx>c:\python27\scripts\pip.exe install pexpect
Collecting pexpect
Downloading pexpect-4.0.1.tar.gz (143kB)
100% |################################| 147kB 1.2MB/s
Collecting ptyprocess>=0.5 (from pexpect)
Downloading ptyprocess-0.5.1-py2.py3-none-any.whl
Building wheels for collected packages: pexpect
Running setup.py bdist_wheel for pexpect
Stored in directory: C:\Users\xxx\AppData\Local\pip\Cache\wheels\f2\65\89\09578bcd0efeabc7e2b0079cd62d3955c1477f2e55aa5031a4
Successfully built pexpect
Installing collected packages: ptyprocess, pexpect
Successfully installed pexpect-4.0.1 ptyprocess-0.5.1
- 1. Có phiên bản kdevelop mà tôi có thể cài đặt trên các cửa sổ không?
- 2. Tạo ứng dụng Desktop (cửa sổ) có thể chạy mà không cần cài đặt?
- 3. không thể cài đặt XDEBUG trên các cửa sổ?
- 4. Tôi có thể cài đặt Laravel mà không cần sử dụng Composer không?
- 5. jQuery $ (cửa sổ) .load không hoạt động như mong đợi
- 6. Không thể cài đặt gói xoắn trên máy cửa sổ
- 7. Tôi không thể cài đặt đá quý rmagick trên các cửa sổ
- 8. Cài đặt Postgres trên cửa sổ để sử dụng với
- 9. Không thể khởi chạy git gui sử dụng Cygwin trên cửa sổ
- 10. Có thể sử dụng MSBuild Extension Pack mà không cần cài đặt không?
- 11. Tôi có thể cài đặt Swift (OpenStack Storage Infrastructure) của OpenStack mà không cần cài đặt Nova không?
- 12. Cài đặt Ant trên Cygwin
- 13. Chúng tôi có thể sử dụng git-cv trên cửa sổ không?
- 14. Trình gỡ lỗi pudb có thể được sử dụng trên các cửa sổ không?
- 15. Tôi có thể viết một cài đặt Cygwin để bao gồm các gói nhất định không?
- 16. hướng dẫn: cài đặt có lập trình trên cửa sổ?
- 17. Cài đặt và sử dụng aspnet_merge.exe mà không cần cài đặt Windows SDK?
- 18. Tôi có thể sử dụng git của mSysGit và Cygwin không?
- 19. Module _imaging C không được cài đặt (trên cửa sổ)
- 20. Tôi có thể sử dụng OpenFrameworks trên OS X mà không phải sử dụng XCode không?
- 21. Có thể chạy ứng dụng Adobe AIR mà không cần cài đặt không?
- 22. npm cài đặt mà không cần ssl
- 23. Cài đặt gcc-C++ trên CentOS mà không cần yum
- 24. Cài đặt Gói R mà không cần Internet
- 25. Phân phối ứng dụng mà không cần cài đặt mono
- 26. Các vấn đề khi biên dịch ffmpeg trên các cửa sổ bằng cách sử dụng cygwin
- 27. Delphi: Hiển thị cửa sổ mà không cần kích hoạt
- 28. Cài đặt maven2 mà không cần openjdk
- 29. Làm thế nào tôi có thể cài đặt mô-đun Perl mà không cần sử dụng CPAN.pm?
- 30. Làm cách nào để tôi có thể đợi các tác vụ mà không cần ném TaskCanceledExceptions?
@Symmetric: bạn đã thay đổi vào liên kết để trỏ đến [ 'winpexpect'] (http: // bitbucket .org/geertj/winpexpect). Nhưng ['wexpect'] (http://sage.math.washington.edu/home/goreckc/sage/wexpect/) là một mô-đun khác. – jfs
@ J.F.Sebastian: vị trí tốt, những liên kết cũ đã bị hỏng nên tôi không thể tìm thấy nhiều về dự đoán. Đã sửa. – Symmetric