Bash 스크립트에서 Java 프로그램을 실행하고 매개변수를 제공하는 방법은 무엇입니까?

Bash 스크립트에서 Java 프로그램을 실행하고 매개변수를 제공하는 방법은 무엇입니까?

컨텍스트 메뉴에 ''라는 항목을 추가하겠습니다.ABC로 열기". 내가 언제마우스 오른쪽 버튼으로 클릭폴더.

언제. . . 언제"ABC로 열기"선택하면 Java 프로그램이 실행됩니다."abc.class".

이 Java 프로그램에는 "디렉토리 경로"와 같은 선택한 폴더의토론.

내 Bash 스크립트는 어떤 모습일까요?

필요할 수 있는 정보:

  • 자바:usr/bin/java
  • ABC 자바 프로그램:home/john/myapp/abc.class
  • 스크립트는 내부에 배치됩니다.home/john/.config/caja/scripts
  • 이것남자내 사용자 이름은리눅스 민트 메이트 17.2, 그리고카하파일 관리자로

다음 질문은 내 문제에 가깝습니다.

답변1

컨텍스트 메뉴에서 ABC를 사용하여 열기 방법을 추가할 수 있는 Caja-actions 구성 도구가 있습니다.

Caja Action 도구에는 스크립트 경로와 디렉터리 매개변수를 제공할 수 있는 명령 탭이 있습니다. 다음은 도구 이미지입니다. http://poundbangbinbash.com/LinuxMint/MATE/Caja/CajaActions/ConfigurationTool.png

귀하의 스크립트는 다음과 같습니다

!/bin/bash
usr/bin/java [options] home/john/myapp/abc.class $*

답변2

내 Bash 스크립트는 다음과 같습니다.

#!/bin/bash
java -cp "$HOME/myapp" abc $CAJA_SCRIPT_SELECTED_FILE_PATHS

설명하다:

내 프로그램이 여기에 있으므로:

/home/john/myapp/abc.class

  • -cp"abc" 프로그램을 먼저 찾으려면 항상 java 옵션을 사용해야 합니다 .
  • $HOME은 내 홈 디렉토리를 나타냅니다 /home/john.
  • 환경 변수 $CAJA_SCRIPT_SELECTED_FILE_PATHS가 나타내는 경로내가 선택한 폴더, 마지막으로 "abc" 프로그램에 매개변수로 전달됩니다.

이러한 솔루션은 다음과 같습니다.카하특정 환경 - 다른 곳에서는 작동이 보장되지 않습니다.

크레딧 @pranav, 감사해요.

관련 정보