Como posso passar uma variável para uma string a ser usada como parte de um parâmetro de linha de comando que não seja de arquivo?

1

O comando da linha de comando que eu quero executar é um comando mkvmerge:

mkvmerge arguments: [-o] [output_filename] [-a] [tracknumer] [-S] [source_filename]

Portanto, eu tenho uma variável command e ela assume os valores de -a 1 , -a 1 -S ou -S dependendo de certas condições serem atendidas, então eu tenho essa declaração if no meu script bash para executar o comando

if [[ ! -z $command ]]; then
    mkvmerge -o "${file}"$command "$sourcefile"
fi

O motivo pelo qual eu tenho $command ao lado de ${file} sem espaço é porque $command contém um único espaço em branco inicial. O problema que estou tendo é que quando eu executo o script, está assumindo $ comando para fazer parte do nome do arquivo e não como parâmetros adicionais que devem seguir após o nome do arquivo.

    
por OnAnOpenField 27.03.2018 / 21:42

0 respostas

Tags