문제

오늘 나는 Apache Ant 파일에 작업을 추가해야했습니다. 명령 줄은 같은 것이어야합니다

myprogram --param1 --param2 path\somefile 2> path\logfile

이것의 문제는 내가 이것에 대해 다음과 같은 것을 사용한다면

<exec executable="$(myprogram)"
  <arg value="--param1">
  <arg value="--param2">
  <arg path="$(somefile)">
  <arg value="2>">
  <arg path="$(logfile)">
</exec>

모든 인수가 인용되었으므로 명령은 다음과 같이 보였습니다.

myprogram "--param1" "--param2" "path\somefile" "2>" "path\logfile"

파일/경로에 공간이 있지만 파이프를 로그 파일로 파괴하는 경우 나쁘지 않고 특히 좋지 않습니다 (대신 프로그램은 두 개의 추가 파일 인수 "2>"및 "path logfile"이 있다고 생각합니다).

파일을 매개 변수로 만 원하는 배치 스크립트를 호출 하여이 문제를 해결했지만 궁금했습니다. 그러한 해결 방법 없이이 작업을 수행 할 수 있습니까?

도움이 되었습니까?

해결책

"myProgram --param1 --param2 path somefile 2> path logfile"을 실행하면 프로그램에 대한 인수는 "2>"에서 끝납니다. 파일 리디렉션은 개미 내에서 사용되지 않는 쉘의 작동입니다. 문서를 보면 Ant Exec 작업, 당신은 그것이 그것을 통해 리디렉션을 지원한다는 것을 알 수 있습니다 산출 기인하다.

다른 팁

당신은 시도 했습니까? <arg line="..." />?

ANT EXEC 작업에는 출력 파일을 덮어 쓰거나 추가 해야하는지 확인하기 위해 매개 변수 부록과 결합 된 명령 줄 배관없이 로그 파일을 지정할 수있는 출력 매개 변수가 있습니다.

주제 스타터처럼 동등한 문제가있었습니다. Java Execution Command Line에서는 소스 파일을 별도의 인수로 추가해야했습니다. 나는 그것을 사용했다 <arg value="..." /> 태그를 사용하지만 사용합니다 <arg line="..." /> NULLPTR이 제안한대로 내 문제를 해결했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top