Como verificar a sintaxe de scripts de shell POSIX portáteis? [duplicado]

Esta pergunta já tem uma resposta aqui:

Como faço para verificar a sintaxe de um script Bash sem executá-lo? 7 respostas

O seguinte script shell executa bem quando fornecido/bin/true para o primeiro argumento, mas pode falhar com umerro de sintaxe durante a execução!

#!/bin/sh
if $1 ; then exit; fi
/tmp/asdf <<< ASDF # Something with syntax error in POSIX

Certamente alguns erros de sintaxe (se não todos?) Podem ser evitados pela verificação estática?Como verificar estaticamente se um determinadoLinguagem de Comando do Shell script é sintaticamente válido?

EDITAR: A verificação de erros de sintaxe nos scripts Bash foi respondida emessa questão.

EDIT # 2: Observe queFalha na festança para verificar corretamente se a sintaxe segue o POSIX, mesmo quando executada com o+B e--posix bandeiras, além de-n.

questionAnswers(2)

yourAnswerToTheQuestion