Respostas:
De man bash(sim, é uma grande página de manual, geralmente a pesquisa no Google é mais rápida):
-xDepois de expandir cada comando simples, para comando, comando caso, selecione comando ou aritmética para comando, exiba o valor expandido do PS4, seguido pelo comando e seus argumentos expandidos ou lista de palavras associada.
Efetivamente: quando você executa um script, ele mostra todas as ações realizadas nesse script. Portanto, todos os ifs, loops e comandos são executados. Muito útil para depuração.
-vImprima as linhas de entrada do shell à medida que forem lidas. Quando um script é executado, ele imprime o script inteiro enquanto lê o arquivo. Quando você usa o shell interativamente, ele mostra cada comando depois que você pressiona enter.
As aspas acima são da explicação do setcomando builtin no arquivo man bash, que também explica que as opções para settambém podem ser passadas como argumentos (na linha shebang):
As opções estão desativadas por padrão, a menos que indicado de outra forma. Usar em
+vez de-faz com que essas opções sejam desativadas. As opções também podem ser especificadas como argumentos para uma chamada do shell. O conjunto atual de opções pode ser encontrado em$-. O status de retorno é sempre verdadeiro, a menos que uma opção inválida seja encontrada.
/-xalgumas vezes você chega lá man( na verdade é less). Você pode repetir a última pesquisa com /a seta para cima +, mas é necessário descer na página para obter qualquer pesquisa atual na tela ( /é pesquisa para frente, ?é para trás).
npara pesquisa direta e Npara trás.
test -xsob EXPRESSÕES CONDICIONAIS (o terceiro hit), não set -x. -xin man bashé um caso muito ruim, portanto, obter ajuda mais específica: se você usar /^\s+-x\b, (= início de linha + espaço em branco + -x+ limite de palavras), você alcançará o caminho certo em 5 ocorrências ... teria sido 4, mas o fato xcorresponde X... o que me leva a uma pergunta que pretendo fazer . De qualquer forma, na maioria das páginas de manual, o ^\s+-x\bpadrão deve funcionar primeiro, tente os comutadores.
A página man bash faz indício de que estas opções são explicadas mais abaixo, na verdade, mas é facilmente esquecido.
Portanto, seu problema deve realmente ser: A seção OPTIONS da página de manual do bash está incompleta. A resposta seria duplicá-los ou destacar a primeira seção da seção OPÇÕES:
OPTIONS
All of the single-character shell options documented in the descrip‐
tion of the set builtin command can be used as options when the shell
is invoked. [ ... ]
Por fim, para completar: são opções padrão para qualquer shell POSIX, para mostrar o código do script quando read ( -v) e quando run ( -x). A saída aparecerá no stderr.