Existe uma maneira de verificar se um comando específico é bem-sucedido

3

Eu sei que $? fornece o status do comando anterior, mas como posso obter o status de um comando específico.

rsync -avh -r /Source/ /Destination/
folderParam=$(basename !:3)
//commandResultvar : here I want to store status of rsync command
    
por HDev007 12.10.2016 / 10:38

2 respostas

2

rsync -avh -r /Source/ /Destination/
rsync_status=$?
folderParam=$(basename !:3)
# use ${rsync_status} here...
    
por 12.10.2016 / 10:45
0

Não é possível obter um código de saída a partir de um comando específico. Você pode obtê-lo apenas do anterior. Mas não há nada que impeça você de armazenar esse valor em variável diferente e usá-lo mais tarde:

rsync -avh -r /Source/ /Destination/
EXIT_CODE=$?
folderParam=$(basename !:3)
# $EXIT_CODE contains the exit code of the rsync command
    
por 12.10.2016 / 10:52