> Java > java지도 시간 > 본문

Java에서 리디렉션 및 파이프를 사용하여 Linux 셸 명령을 어떻게 실행할 수 있습니까?

Linda Hamilton
풀어 주다: 2024-11-27 17:12:10
원래의
662명이 탐색했습니다.

How Can I Execute Linux Shell Commands with Redirects and Pipes in Java?

Java 리디렉션 및 파이프를 사용하여 Linux 셸 명령 실행

Java에서 Runtime.getRuntime().exec() 메서드를 활용하면 다음을 수행할 수 있습니다. Linux 쉘 명령을 실행합니다. 그러나 리디렉션(>&)과 파이프(|)를 사용하려고 하면 기본 exec() 메서드로는 충분하지 않습니다.

원하는 기능으로 csh 또는 bash 명령을 효과적으로 호출하려면 약간의 조정이 필요합니다. exec()에만 의존하는 대신 다음 구문을 사용해 보세요.

Process p = Runtime.getRuntime().exec(new String[]{"csh", "-c", "command"});
로그인 후 복사

이 예에서 "csh"는 호출할 셸이고 "command"는 실행하려는 Linux 명령을 나타냅니다. . 명령과 함께 "-c"를 지정하면 제공된 문자열을 명령으로 해석하도록 셸에 지시하는 것입니다.

이 접근 방식을 사용하면 리디렉션 및 파이프를 사용하여 Linux 명령을 실행할 수 있습니다. 예를 들어, 다음 코드는 리디렉션과 파이프를 모두 활용합니다.

Process p = Runtime.getRuntime().exec(new String[]{"bash", "-c", "ls /home/XXX | less"});
로그인 후 복사

이 명령은 /home/XXX 디렉터리의 내용을 나열하고 출력을 less 명령으로 파이프하여 탐색하고 상호 작용할 수 있도록 합니다.

이제 향상된 이해를 통해 Java 애플리케이션 내에서 Linux 셸 명령을 원활하게 실행할 수 있으므로 시스템 상호 작용에 대한 유연성과 제어가 더욱 쉬워집니다.

위 내용은 Java에서 리디렉션 및 파이프를 사용하여 Linux 셸 명령을 어떻게 실행할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿