스칼라에는 너무 많은 멋진 것들이 있기 때문에 프로세스의 출력을 쉽게 캡처 할 수 있다고 생각했습니다. Java 수행 방법을 알고 있지만 다른 방법을 묻습니다.외부 프로세스의 출력을 캡처하는 스칼라 내장 클래스가 있습니까?
7
A
답변
5
scala> scala.tools.nsc.io.Process("ls -1 /tmp | wc").stdout foreach println
41 63 770
아니면 REPL 명령이있다 : 2.8 어떤 IO 코드 배송
scala> :sh cat /etc/passwd | wc
stdout: List[String] = List( 65 185 3667)
내가 이길 수있는 것보다 더 많은 정지 에너지를 극복 필요로 가고 있었다, 그래서 나는 컴파일러에 모두 넣어. scala.tools.nsc.io에 합리적으로 유용한 것들이 많이 있습니다.
3
다른 운영 체제에서 프로세스/스트림 처리가 다르기 때문에 Java가이를 수행한다고 말하는 것은 옳지 않습니다.이 기능 대부분은 실제로 원시 코드로 전달됩니다.
더 흥미로운 질문은 스칼라
그 대답 (당신이 NIO 기능을 사용하여 스트림을 포장하는 경우 또는 채널)의 리더 나 라이터보다 "관용구"일을 할 수있는 방법이 있는지 질문하는 것?
2.8을 기반으로하는 스칼라 IO 라이브러리 작업이 진행 중일 때 스트림과 채널을 사용하는 더 좋은 방법이 포함되지만 아직 사용할 수는 없습니다.
exec() 프로세스를 처리 할 때 입력에 하나의 스레드를 사용하고 출력을 위해 하나의 스레드를 사용하는 일반적인 방법을 다루는 더 좋은 방법이 될 수도 있습니다.
5
스칼라 2.9으로, 당신은 할 수 있습니다 :
import scala.sys.process.Process
println(Process("uname -a").!!.contains("x86_64"))
관련 문제
- 1. 백그라운드로 PHP 프로세스의 PID와 출력을 동시에 캡처하는 방법은 무엇입니까?
- 2. Windows cmd 셸에서 출력을 캡처하는 방법은 무엇입니까?
- 3. 여러 프로세스의 출력을 StreamReader에 연결하십시오.
- 4. 스칼라 : 클래스가 정의되지 않은 경우 기본 클래스가 있습니까?
- 5. Powershell : 호스트에서 출력을 캡처하는 방법
- 6. 외부 프로세스의 진행률 표시 줄
- 7. Windows 7 가제트에 외부 구성 요소를 내장 할 수 있습니까?
- 8. GDB를 사용하여 테스트 작성하기 - 출력을 캡처하는 방법?
- 9. 어떻게 널 (null) 이미/dev에로 리디렉션 한 실행중인 프로세스의 표준 출력을/캡처하는
- 10. C에서 프로세스 출력을 캡처하는 방법은 무엇입니까?
- 11. 클래스가 외부 파일에 있습니다.
- 12. 쉘 프로세스의 출력을 표시하는 Python GUI (glade)
- 13. C#에서 쉘 명령 출력을 캡처하는 방법?
- 14. 외부 범위 용 스칼라 생성
- 15. 자식 프로세스의 stdout 출력을 어떻게 캡처 할 수 있습니까?
- 16. 자바에서 자식 프로세스의 출력을 작성하는 방법
- 17. 다중 프로세스 프로세스의 출력을 논 블로킹 리디렉션
- 18. 하위 프로세스의 출력을 표시하지 않습니다. 팝업
- 19. XML DTD 정보를 쿼리하기 위해 .NET에 내장 된 클래스가 있습니까?
- 20. XUL에서 프로세스의 피드백을 얻을 수있는 방법이 있습니까?
- 21. 대기 시간없이 Win32에서 다른 프로세스의 stdout을 캡처하는 방법은 무엇입니까?
- 22. 스칼라 앨리어싱 된 내부 형식과 컴파일 오류가 일치하는 클래스가 있습니까?
- 23. 스칼라 Eclipse 플러그인을 사용하여 클래스가 빌드되지 않음
- 24. C# 프로세스 클래스가 비디오 파일로 출력을 리디렉션합니다.
- 25. 하위 프로세스의 stdout/stderr 출력을 올바르게 읽으려면 어떻게해야합니까?
- 26. 루비가 내장 된 외부 자바 스크립트 파일
- 27. OpenCV - 카메라 출력을 캡처하는 대신 브라우저 창을 기록 하시겠습니까?
- 28. 외부 클래스가 내부 클래스의 멤버에 액세스 할 수 있습니까?
- 29. Perl에서 외부 명령의 출력을 실시간으로 어떻게 읽을 수 있습니까?
- 30. 외부 프로그램 출력을 반환 할 수있는 편집기 또는 IDE가 있습니까?