1. curl 超时设置
--connect-timeout 单位 秒 设置最大请求时间
-m /--max-time 单位 秒 设置最大传输时间
curl --connect-timeout 10 -m 30 'https://baidu.com/xxx'
连接10秒,传输最大30秒超时
2. shell脚本中异常捕获
curl --connect-timeout 10 -m 30 'https://baidu.com/xxx'
抛出异常,后续脚本根据上述异常判断后执行后续逻辑
则使用 $? 进行异常的捕获
脚本如下:
curl --connect-timeout 10 -m 30 'http://baidu.com'
if [ "$?" = "0" ]; then
echo 'curl success '
echo 'do something '
else
echo 'curl fail'
fi
如果shell中有 set -e 则异常会抛出,导致执行中断
3. 文本中字符替换
例如文件中空格替换为换行符,便于使用按行进行操作的bash命令进行文件操作
参见leetcode 192 题