문제

매개 변수를 전달해야합니다 원격 통과하는 Beanshell 스크립트

java -cp bsh-2.0b4.jar bsh.Remote http://10.0.0.1/beanshell script.bsh p1 p2 p3

전화.

어떻게 든 'P1', 'P2'및 'P3'을 읽을 수 있습니까? script.bsh?

PS 지역 매개 변수를 통과합니다 bsh.args 잘 작동하지만 원격 스크립팅에서는 사용할 수 없습니다.

도움이 되었습니까?

해결책

나는 당신이 사용하고 있다고 생각합니다 콩 껍질 도서관. 소스에 따르면 그렇게 할 방법은 없습니다. 유틸리티는 URL과 로컬 스크립트 파일 이름 인 2 개의 인수 만 취합니다. 또한 여러 스크립트 파일 이름을 지원하지 않습니다.

public class Remote
{
    public static void main( String args[] ) throws Exception
    {
          if ( args.length < 2 ) {
                   System.out.println("usage: Remote URL(http|bsh) file [ file ] ... ");
                   System.exit(1);
          }
          String url = args[0];
          String text = getFile(args[1]);
          int ret = eval( url, text );
          System.exit( ret );
    }

또한 서버 측은 통과 된 인수에 대해 알고 있어야합니다.

당신을위한 방법 :

  1. 스크립트 템플릿을 만들면 스크립트에 대한 인수를 대체하고 전달하기 전에 대체 스크립트를 온도에 저장합니다. bsh.Remote
  2. 스크립트가 인수를 읽을 수있는 원격 파일을 만듭니다. 전화하기 전에이 파일을 업로드하려면 원격 사이트와의 추가 통신이 필요합니다. bsh.Remote.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top