2
A
답변
1
을 수행해야합니다 당신은 IO.select
또는 다른 IO 스케줄러, 또는 필요할 수 있습니다
popen3 -- o
에서 명령의 출력 STDIN에서 사용자 입력에 대한
- 기다립니다 일부 다른 다중 작업 스케줄러 (예 :
Thread
).require 'open3' Open3.popen3('ruby -e "while line = gets; print line; end"') do |i, o, t| tin = Thread.new do # here you can manipulate the standard input of the child process i.puts "Hello" i.puts "World" i.close end tout = Thread.new do # here you can fetch and process the standard output of the child process while line = o.gets print "COMMAND => #{line}" end end tin.join # wait for the input thread tout.join # wait for the output thread end
관련 문제
- 1. php에서 쉘 명령을 실행
- 2. 변수로 쉘 명령을 실행
- 3. jar에서 쉘 명령을 실행 하시겠습니까?
- 4. PHP에서 쉘 스크립트 실행
- 5. 여러 서버에서 원격으로 쉘 명령을 실행 하시겠습니까?
- 6. PHP에서 쉘 스크립트 실행
- 7. lynx에서 키를 매핑하여 쉘 명령을 실행
- 8. java를 통한 쉘 스크립트 실행
- 9. PHP : PHP에서 쉘 명령을 실행 하시겠습니까?
- 10. PHP를 통해 sudo로 쉘 명령을 실행
- 11. node-webkit의 JavaScript에서 쉘 명령을 실행 하시겠습니까?
- 12. 파이썬에서 쉘 명령을 실행 중 : 문자열 오류
- 13. 파이썬을 사용하여 쉘 메일 명령을 실행
- 14. 데몬 서버 또는 쉘 명령을 실행 하시겠습니까?
- 15. 어떻게 파워 쉘 긴 명령을 실행
- 16. Makefile 규칙에서 쉘 명령을 실행 중입니다.
- 17. 쉘 스크립트에서 MySQL 명령을 실행 하시겠습니까?
- 18. sudo 암호없이 쉘 스크립트 실행
- 19. 쉘 스크립트 : 쉘 스크립트에서 "exit"명령을 실행 한 후 명령 실행
- 20. PHP는 간부 (과 리눅스 명령을 실행)와 쉘 스크립트를 실행
- 21. 중단없는 쉘 스크립트 실행
- 22. 실행 쉘 스크립트 ++
- 23. 쉘 스크립트 실행 문제
- 24. 스크립트 실행 쉘
- 25. 백그라운드에서 쉘 스크립트 실행
- 26. packagemaker 쉘 스크립트 실행
- 27. 쉘 스크립트 실행 -
- 28. php로 백그라운드에서 쉘 스크립트 실행
- 29. Jenkins에서 Jmeter 실행 쉘 실행
- 30. 인스턴스 시작시 쉘 스크립트 실행
은 내가 루비 스레드 동기화 경험이 없기 때문에 코드를 사용하기를 꺼려 해요 : 여기
는Thread
방법에 대한 데모입니다. 기본적으로, 나는 출력을 프로그램 적으로 처리하고, 쉘을 사용하는 동안 쉘과 상호 작용할 수 있기를 원한다. 그렇게 할 수있는 더 간단한 방법이 있습니까? 쉘을 실행하고 'tee'출력을 내 프로그램으로 리디렉션하면 어떻게 될까요? 내 문제를 해결할 수 있을까요? –@ArtShayderov 데모를 약간 업데이트하고 몇 가지 의견을 추가했습니다. Ruby 파일에 저장하고 테스트 할 수 있습니다. 표준 입력을 조작 할 위치와 표준 출력을 처리 할 위치를 분명히해야합니다. –
그래서 나는 STDIN을 주석 블록 안에'STDIN.each_char {| c | i.puts c}'? –