윈도우 배치 파일을 유닉스 쉘 스크립트로 변환 :유닉스에서 작동하지만 윈도우 배치 파일 (.BAT)로 변환하고 싶습니다 내가 쉘 스크립트 (.sh로)가
cat >flog.ctl <<_EOF
LOAD DATA
INFILE '$1.log' "str ';'"
APPEND INTO TABLE flog
fields terminated by '=' TRAILING NULLCOLS
(
filename constant '$1'
,num char
,data char
)
_EOF
sqlldr <username>/<password>@<instance> control=flog.ctl data=$1.log
I 배치 파일에 너무 익숙하지 않지만 대답이 완전한 해결책이 아니라 몇 가지 힌트라면 나는 완전히 혼란스러워 할 것입니다. 이것은 다른 질문 here에 대한 답을 돕기위한 것입니다.
@ voithos 코드에서 사용되는 '% 1 %'와 (과) '% 1'의 차이점은 무엇입니까? 나는 둘 다 테스트 해봤 다. –
@ JohnDoyle : 두 번째 %는 필요하지 않습니다. 제임스는 배치 파일에서 변수를 구분하기 위해 두 개의 기호를 사용하는 데 익숙 할 것이라고 생각합니다. [여기에 나와 있습니다] (http://www.tech-recipes.com/rx/630/using-variables-in-windows-batch-files) /). 그러나 명령 줄 인수를 참조하는 "올바른"방법은 내가 아는 한 [단일 % 사용] (http://www.computerhope.com/batch.htm#02)입니다. – voithos
안녕하세요, @ 존 도일. 어느 쪽도 다른 쪽보다 정확하지 않습니다. 확장 할 때 특별한 대우를 받기 때문에 인수 변수 0-9를 단일 %로 항상 참조 할 수 있다는 것은 사실입니다. 명명 된 변수를 사용할 때'ECHO % Asometext % B'는 잘못된 출력을 가지며'ECHO % A % sometext % B %'는 그렇지 않기 때문에 항상 두 번째 % 습관을 사용합니다. 잠시 시간을 내면 내 뜻을 알 수 있습니다. – JamieSee