面试题答案
一键面试#!/bin/bash
# 编译代码
echo "开始编译代码..."
if! make; then
echo "编译代码失败"
exit 1
fi
echo "编译代码成功"
# 运行单元测试
echo "开始运行单元测试..."
if! make test; then
echo "运行单元测试失败"
exit 1
fi
echo "运行单元测试成功"
# 打包
echo "开始打包..."
if! make package; then
echo "打包失败"
exit 1
fi
echo "打包成功"
# 部署到服务器
echo "开始部署到服务器..."
if! scp package.tar.gz user@server:/deploy/path; then
echo "部署到服务器失败"
exit 1
fi
echo "部署到服务器成功"
错误处理说明
- 编译代码:使用
make
命令进行编译,如果make
命令执行失败,if! make
条件成立,输出错误信息并使用exit 1
终止脚本执行,因为后续步骤依赖编译成功。 - 运行单元测试:同样使用
make test
命令运行单元测试,若测试失败,通过if! make test
判断,输出错误信息并终止脚本,因为打包依赖单元测试成功。 - 打包:利用
make package
进行打包,若打包失败,if! make package
判断成立,输出错误信息并终止脚本,因为部署依赖打包成功。 - 部署到服务器:使用
scp
命令将打包文件传输到服务器指定路径,若传输失败,if! scp...
条件为真,输出错误信息并终止脚本。
通过这种方式,每个步骤的错误都能被及时捕获并处理,保证流程按照依赖关系正确执行。