commands está obsoleto e deve ser substituído por subprocess chamadas. Um substituto para commands.getoutput() é subprocess.Popen().communicate() :
import subprocess
import shlex
command = shlex.split('/bin/ls -l -a -h')
process = subprocess.Popen(command, stdout=subprocess.PIPE)
stdout, stderr = process.communicate()
bandit provavelmente ainda causará um problema de baixa gravidade porque você ainda usa subprocess , que não é seguro, como qualquer coisa que invoque um shell, mas isso é inevitável. Veja o aviso restante como um lembrete sobre uma insegurança potencial em seu código - dependendo do que você está realmente chamando em um shell, você tem que fazer a verificação você mesmo - é um comando codificado em uma constante de string, ou uma entrada do usuário, ou algo variável dependendo do código de chamada? Em qualquer caso, é sempre aconselhável fazer a higienização, o Python tem o pipes module para isso. / p>