提醒:本文为合集文章,后续会持续更新! 关注我,持续学习shell脚本,每日提升! 谁一开始写shell脚本不是从流水账开始的?写着写着你就会发现,需要在哪里加判断,在哪里抛出异常。写着写着就知道何时用函数,何时用变量。写着写着你就会说,shell脚本也就那么回事。 【需求】 将如下部署文档用一个shell脚本实现。 1)下载源码 cd /usr/local/src sudo curl -O http://nginx.org/download/nginx-1.23.0.tar.gz 2)解压 sudo tar zxf nginx-1.23.0.tar.gz cd nginx-1.23.0 3)安装依赖 ## RHEL/Rocky sudo yum install -y gcc make pcre-devel zlib-devel openssl-devel ##ubuntu sudo apt install -y gcc make libpcre++-dev libssl-dev zlib1g-dev 4)配置 sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module 5)编译和安装 sudo make && sudo make install 6)编辑system服务管理脚本 sudo vi /lib/systemd/system/nginx.service #写入如下内容 [Unit] Description=nginx - high performance web server Documentation=http://nginx.org/en/docs/ After=network-online.target remote-fs.target nss-lookup.target Wants=network-online.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf ExecReload=/bin/sh -c "/bin/kill -s HUP $(/bin/cat /usr/local/nginx/logs/nginx.pid)" ExecStop=/bin/sh -c "/bin/kill -s TERM $(/bin/cat /usr/local/nginx/logs/nginx.pid)" [Install] WantedBy=multi-user.target 7)加载服务 sudo systemctl daemon-reload 8)启动服务 sudo systemctl start nginx 【参考脚本】 #!/bin/bash ck_ok() { if [ $? -ne 0 ] then echo "$1 error." exit 1 fi } download_ng() { cd /usr/local/src if [ -f nginx-1.23.0.tar.gz ] then echo "当前目录已经存在nginx-1.23.0.tar.gz" echo "检测md5" ng_md5=`md5sum nginx-1.23.0.tar.gz|awk "{print $1}"` if [ ${ng_md5} == "e8768e388f26fb3d56a3c88055345219" ] then return 0 else sudo /bin/mv nginx-1.23.0.tar.gz nginx-1.23.0.tar.gz.old fi fi sudo curl -O http://nginx.org/download/nginx-1.23.0.tar.gz ck_ok "下载Nginx" } install_ng() { cd /usr/local/src echo "解压Nginx" sudo tar zxf nginx-1.23.0.tar.gz ck_ok "解压Nginx" cd nginx-1.23.0 echo "安装依赖" if which yum >/dev/null 2>&1 then ## RHEL/Rocky for pkg in gcc make pcre-devel zlib-devel openssl-devel do if ! rpm -q $pkg >/dev/null 2>&1 then sudo yum install -y $pkg ck_ok "yum 安装$pkg" else echo "$pkg已经安装" fi done fi if which apt >/dev/null 2>&1 then ##ubuntu for pkg in make libpcre++-dev libssl-dev zlib1g-dev do if ! dpkg -l $pkg >/dev/null 2>&1 then sudo apt install -y $pkg ck_ok "apt 安装$pkg" else echo "$pkg已经安装" fi done fi echo "configure Nginx" sudo ./configure --prefix=/usr/local/nginx --with-http_ssl_module ck_ok "Configure Nginx" echo "编译和安装" sudo make && sudo make install ck_ok "编译和安装" echo "编辑systemd服务管理脚本" cat > /tmp/nginx.service <
李经纬三借成立健力宝,90年代市值60亿,为何入狱后负债全球第一个以小行星命名的企业是健力宝三水健力宝星!前美国第一夫人喝健力宝上报,曾让外媒报道中国魔水,摆在联合国大会的会议桌上如今健力宝集团还有10亿负债,健力宝的下坡路要从李经纬出油价有变化本轮国内油价计价统计周期,从2月20号到3月3号,共计10个工作日,今天为第4个工作日,油价刚破了下调红线后,国际油价又迎来下跌!继昨日美布两油下跌逾3,本轮国内本轮周期统计也相应阿里巴巴最新季度财报净利润同比增长1382月23日晚,阿里巴巴集团公布2023财年第三季度(自然年2022年第四季度)业绩。财报显示,阿里巴巴本季度营收为2477。6亿元(约合359。21亿美元),同比增长2净利润为45投资企业盘点2022年度金华市制造业投资企业50强名单汇总(图)中商情报网讯2022年,金华市制造业赋能加速发展,全市制造业投资增长21。5,高于全部投资增速8。0个百分点,拉动全部投资增长4。4个百分点,占全部投资比重22。1,比上年提升1。今日人民币汇率人民币对美元汇率中间价报6。9028元下调269个基点中国小康网2月23日讯今日(2月23日)人民币对美元汇率中间价为6。9028元,较前一交易日下调269个基点。中国人民银行授权中国外汇交易中心公布,2022年2月23日银行间外汇市南宁青秀山满园花开踏春赏花正当时南宁云南宁新闻网讯(记者邓玲文图)随着春天的呼唤,绿城南宁百花齐放,美不胜收。眼下,青秀山风景区内的黄花风铃木金鱼草豆梨樱花桃花竞相开放,争奇斗艳。黄的雪白粉红桃红各种颜色的花朵给有以下行为的人寿命都不长(健康推荐)现实中,除了教学工作和业余写作,我最大的爱好就是养生,因为我知道,身体是革命的本钱,没有一个健康的身体,就意味着即将失去一切。今天我就把自己20多年来学到且践行有效的关键养生知识分全球手机销量排行榜小米第3华为跌落榜外,销量下降11。3哈喽,您好!我是原呵呵,点点关注吧,更多精彩内容等着您2022年是全球智能手机市场又一个惨淡的一年,根据Canalys的数据,第四季度同比下降17,全年出货量比2021年低11,C法国和日本的综合国力谁更强?法国全世界只有三个国家比我强在我身边许多人的认知里面,法国似乎是很难去和日本相提并论的。因为早在一个多世纪前的近代,这两个国家就处于两种截然相反的状态。一个是江河日下的欧陆贵族,一个则是蒸蒸日上的亚洲新星。当至少获得5座金球奖的国家排行榜金球奖是由法国队报旗下杂志法国足球自1956年起举办的授予每年度最优秀的欧洲足球运动员的奖项,也是世界足坛上最负盛名影响力最大的足球奖项评选之一。金球奖1994年之前评选对象限定为图集马龙3比1战胜梁靖崑晋级直通赛男单决赛图为马龙在比赛中中国体育讯2月22日晚,直通德班2023中国乒乓球队世乒赛选拔赛首站进入到第五个比赛日的争夺。在男单半决赛中,马龙大比分3比1战胜梁靖崑晋级决赛,四局比分为11比7