TCL 스크립트에서 bash 스크립트를 호출하려고하는데 bash 스크립트에서 종료 상태를 가져 오거나 최소한 TCL 스크립트로 다시 전달해야합니다. 스크립트가 성공적으로 실행되었는지 알 수 있습니다. 어떤 제안?tcl 스크립트에서 bash 스크립트 호출 및 상태 리턴 및 종료
답변
http://wiki.tcl.tk/exec을 참조하십시오 - "토론 표시"버튼을 클릭하십시오 - 당신이 요구하는 것을 정확하게하는 방법에 대한 매우 상세한 예가 있습니다. 당신이 생각해야 할 것은 어떻게 반환 TCL의 값, 또는 얼마나 배쉬에서 종료 상태를 반환하는 함정에 요구하는지 여부는 분명하지 않다 catch
set status [catch {exec script.bash} output]
if {$status == 0} {
puts "script exited normally (exit status 0) and wrote nothing to stderr"
} elseif {$::errorCode eq "NONE"} {
puts "script exited normally (exit status 0) but wrote something to stderr which is in $output"
} elseif {[lindex $::errorCode 0] eq "CHILDSTATUS"} {
puts "script exited with status [lindex $::errorCode end]."
} else ...
확실한 링크는 Tcl 8.6 문서의 예입니다. http://www.tcl.tk/man/tcl8.6/TclCmd/exec.htm#M29 –
nice. Tcl 8.5 문서에는 동일한 예가 있습니다. http://www.tcl.tk/man/tcl8.5/TclCmd/exec.htm#M28 –
TCL의 내 경험이 제한되어 인용 복잡한 작업을 수행해야하는 경우 특히, 거기에 경고 때때로 가볍게 두들기. 그러나 @k의 대답으로 시작하는 링크를 따라가는 것은 this page으로 이어져 errorCode 변수와이 상황에서 유용 할 수있는 관련 것들에 대해 설명합니다. 다음의 errorCode의 사용을 보여주는 간단한 예입니다
TCL :
set ret_val [catch { exec /bin/bash /path/to/bash_script }]
set errc $errorCode
set ret_val [lindex [split $errc " " ] 2]
puts $ret_val
bash_script, 위의 언급과 같이
42
:의 출력을 주도#!/bin/bash exit 42
- 1. bash 명령 및 리턴 상태
- 2. bash 스크립트 및 rake 스크립트에서 rvm 및 sudo
- 3. Windows에서 Git Bash - 저장 위치 및 Bash 스크립트 호출 방법
- 4. awk 및 bash 스크립트
- 5. bash 스크립트에서 C 프로그램의 리턴 값을 확인 하시겠습니까?
- 6. Bash 스크립트에서 종료 코드를 트래핑하는 방법
- 7. BASH 스크립트 : 명령의 결과 및 파이프 라인
- 8. Bash 스크립트 및 문자열 비교
- 9. Windows 및 Linux에서 일반 TCL 스크립트 실행
- 10. sh 또는 bash 스크립트에서 Windows 일괄 스크립트 실행/호출
- 11. GNU 병렬을 사용하는 동안 bash 스크립트에서 python 스크립트 호출
- 12. 변수 및 줄 바꿈에 대한 도움말 및 bash 스크립트에서 인용하기
- 13. PHP에서 파이썬 호출 및 리턴 코드 받기
- 14. bash 스크립트에서 루프 및 변수를 수행하는 동안?
- 15. bash 스크립트에서 모든 입력 및 출력 캡처
- 16. 스크립트에서 matlab 스크립트 호출
- 17. bash 스크립트에서 make를 호출 할 수 없습니다.
- 18. 종료 상태 11 : 의미는 무엇입니까?
- 19. Bat 파일에서 파이썬 호출 및 리턴 코드 받기
- 20. 어떻게 파이썬 스크립트에서 호출 bash 스크립트로 제어를 되돌릴 수 있습니까?
- 21. 파이썬에서 클래스 레벨 리턴/종료
- 22. Bash 스크립트에서 Ruby 호출을 기다리십시오.
- 23. bash 스크립트에서 ERRORLEVEL에 액세스
- 24. Bash로부터 호출 된 Expect 스크립트의 종료 상태 코드
- 25. 스크립트에서 자바 스크립트 인터프리터 호출
- 26. SQLite, bash 스크립트 및 연결 연산자
- 27. Bash 스크립트 디렉토리 감지 및 생성
- 28. bash 스크립트에서 호출했을 때 wget 및 curl이 훨씬 느려졌습니다.
- 29. 다른 파이썬 스크립트에서 파이썬 스크립트 종료
- 30. PHP에서 스크립트 종료 상태 코드 얻기
입니다. –
@Simon Hibbs : tclsh의 bash 스크립트에서 종료 상태를 캡처하고 싶습니다. – tgai