debug() 출력 시작 부분의 합계는 무엇을 의미합니까 +
?++
bash
set -x
원문은 이렇습니다
++ delete
+ exitstatus=0
+ '[' 0 = 0 ']'
++ delete
+ whiptail --title 'Command output 1311' --separate-output --scrolltext --msgbox '/usr/bin/raspi-config-DEBUG.sh: line 1311: delete: command not found' 17 80 10
+ echo '1317 done printing choice to stdout'
답변1
이것이 프롬프트 +
입니다 ( 일반적인 프롬프트 나 일부 변형과 마찬가지로 기본 대화형 프롬프트입니다). 추적이 활성화되면 각 명령이 실행되기 전에 출력됩니다 .PS4
PS1
$
set -x
설명서에는 bash
다음과 같이 나와 있습니다.
PS4
이 매개변수의 값은 이와 같이 확장되어
PS1
실행 추적 중에 각 명령 bash가 표시되기 전에 인쇄됩니다. 의 첫 번째 문자는PS4
여러 수준의 간접 참조를 나타내기 위해 필요한 만큼 복사됩니다. 기본값은 입니다+
.
여러분이 볼 수 있는 배수는 +
서브셸에서 실행되는 명령으로 인해 발생합니다.
세 가지 수준의 하위 쉘을 보여주는 예:
$ cat script.sh
#!/bin/bash
echo "$( echo "$( echo hi )" )"
$ bash -x script.sh
+++ echo hi
++ echo hi
+ echo hi
hi