Я просто написал небольшой скрипт, который вытаскивает из репозитория GIT, а затем запускает две команды.Script/Bash: Как добавить if-statement и проверить фатальную ошибку?
Я хотел бы добавить, если заявление, когда пароль введен неправильно, чтобы не запустить две команды до сих пор у меня есть
#!/bin/sh
echo Pulling GIT repository and do command1 and command2. Press Enter to start...
read
cd /myProjects
git pull
printf "\n \n command1 will start now \n \n"
command1
printf "\n \n command2 will start now \n\n"
command2
echo Finished. Press Enter to exit ...
read
Я думаю, что-то из следующего было бы хорошо. Я просто не могу понять, что положить в условие if.
#!/bin/sh
echo Pulling GIT repository and do command1 and command2. Press Enter to start...
read
cd /myProjects
git pull
if [ the Password was wrong ] ; then
printf "\n \n command1 will start now \n \n"
command1
printf "\n \n command2 will start now \n\n"
command2
echo Finished. Press Enter to exit ...
read
else
echo Your password was wrong
fi
Обратите внимание на выход за неправильный пароль:
fatal: remote error: Invalid username or password.
возвращают ли мерзавец код состояния можно проверить? – AlG
@AlG: Неразумно. Он возвращает 1 для почти каждой ошибки. –
@AIG Конечно. 'git what || выход' должен быть всем, что требуется. Пока вам все равно, почему это не удалось, это достаточно хорошо. – tripleee