#powershell #azcopy
Вопрос:
У меня есть скрипт в Ubuntu, который каждый час копирует только один файл в учетную запись хранилища. Я использую azcopy filename.tar https://<storage>.blob.core.windows.net/<container>
.
Этот сценарий работает, но я хотел бы проверить, была ли копия успешной или нет, например:
validcopy = azcopy copy filename.tar https://<storage>.blob.core.windows.net/<container>
if(validcopy){
echo "Success"
} else {
echo "Failure"
}
Кроме того, я пытался использовать Power Shell в Linux (pwsh), но безуспешно.
Пожалуйста, кто-нибудь может мне помочь?
Ответ №1:
У меня есть альтернативное решение этой проблемы. Я использовал код выхода в оболочке bash. Каждая команда Linux или Unix, выполняемая сценарием оболочки или пользователем, имеет статус выхода. Статус выхода-это целое число. 0 статус выхода означает, что команда была выполнена успешно без каких-либо ошибок. Ненулевое (1-255 значений) состояние выхода означает, что команда была выполнена неудачно.
Определенная переменная оболочки, вызываемая $?
для получения статуса завершения ранее выполненной команды
Все было так:
azcopy copy filename.tar https://<storage>.blob.core.windows.net/<container>
if [[ $? -gt 0 ]]
then
echo "Failure"
else
echo "Success"
fi