나는 -x
bash 스크립트의 실행을 추적하는 데 사용합니다.
#!/bin/bash -x
x=1
y=2
실행 중에 출력으로 전송됨
+ x=1
+ y=2
질문: 스크립트 중간에 추적 모드를 중지/일시 중지한 다음 다시 활성화하는 방법은 무엇입니까? ti는 y=2 >/dev/null과 같은 것과 아무 관련이 없습니다.
상세 모드( )를 사용할 수 있나요 #!/bin/bash -v
?
답변1
이것set
내장이러한 옵션을 제어하세요.
열려 있는 xtrace
:
set -x
끄려면:
set +x
플러스와 마이너스의 역논리와 약간 비슷하지만 그게 전부입니다.
마찬가지로 지원되는 다른 모든 옵션 set
도 명령줄 (*) 에서 설정할 수 있으므로 등과 bash -u
동일합니다 set -u
. 링크 설명에 목록이 있으며 help set
명령줄에도 표시됩니다.
set -o xtrace
일부 옵션에는 와 같은 긴 형식도 있습니다 set -x
.
(* 하지만 그 반대라고 말할 수는 없습니다. 모든 명령줄 옵션을 set
다음을 사용하여 설정할 수 있는 것은 아닙니다. -l
예를 들어 이에 상응하는 옵션이 없고 당연히 -c
.)