linux的软件实施shell更新脚本

linux的软件实施shell更新脚本,第1张

楼主的脚本应该是只用来更新的吧?

建议将原先脚本执行有错误的地方贴出。

我先按我的思路改下脚本吧。

#!/bin/bash

#########################################

#Function:update lnmj gdsoft

#Usage: bash lnmj_update.sh

#Author: tjt

#Company: gd

#Version: 1.1

#########################################

stop()

{

service jboss405 stop

service fileservice stop

}

bak()

{

time=$(date '+%Y%m%d' )

cd /app/temp/bak

mkdir $time

zip -r /app/temp/bak/$time/webapps_bak.zip /app/www/webapps/*

}

start()

{

service jboss405 start

service fileservice start

}

update()

{

cp /app/temp/my_auto_update/* /app/temp/

unzip -o -d /app/www/webapps/ /app/temp/my_auto_update/*

rm -rf /app/temp/my_auto_update/*

}

bak=$(bak)

stop=$(stop)

update=$(update)

start=$(start)

if[0 == 0] #这个地方“0=0”是表示更新前必须停止服务。

then

stop

# exit 0 这里要注释掉,不然停止服务就会退出脚本下面语句将不会执行。

echo "服务停止命令正常结束!" >/app/temp/log

fi

#如何执行没有报错,执行备份命令

if [ $? -eq 0 ]

then

bak

echo "备份正常结束!" >/app/temp/log

else #如果执行结果未成功将退出脚本,下面语句将不会执行。

exit 1

fi

#如何执毕举行没有报错,执行更新命令

if [ $? -eq 0 ]

then

update

echo "更新正常结束!" >/app/temp/世数镇log

else#同上

exit 1

fi

#如何执行没有报错,执行启动命令

if [ $? -eq 0 ]

then

start

echo "程序启动正常结束!" >/app/temp/log

else#同上

exit 1

fi

思路:停止服务→成功→备份→成搜粗功→更新→启动服务

失败则退出脚本

vi ~/.bashrc

PATH="$PATH":/usr/local/java/jdk1.6.0_24

JAVA_HOME=/usr/local/java/jdk1.6.0_24

source ~/.bashrc

前者是加路径进入~/.bashrc

后者是加变量进入~/咐敏卜.bashrc

然后source使生效

~/.bashrc是设衡穗置文件,拿旁每次执行shell脚本都会重读这个文件

在Linux

*** 作系统中,有一个系统软件包,它的功能类似于Windows里面的“添加/删除程序”,但是功能又比“添加/删除程序”强很多,它就是

Red

Hat

Package

Manager(简称RPM)。此工具包最先是由Red

Hat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。下面就给大家介绍一下它的具体使用方法。

1.我们得到一个新软件,在安装之前,一般都要先查看一下这个软件包里有什么内容,假设这个文件是:Linux-1.4-6.i368.rpm,我们可以用这条命令查看:

rpm

-qpi

Linux-1.4-6.i368.rpm

系统将会列出这个软件包的详细资料,包括含有多少个文件、各文件名称、文件大小、创建时间、编译日期等信息。

2.上面列出的所有文件在安装时不一定全部安装,就像Windows下程序的安装方式分为典型、完全、自定义一样,Linux也会让你选择安装方式,此时我们可以用下面这条命令查看软件包将会在系统里安装哪些部分,以方便我们的选择:

rpm

-qpl

Linux-1.4-6.i368.rpm

3.

选择安装方式后,开始安装。我们可以用rpm-ivh

Linux-1.4-6.i368.rpm命令安装此软件。在安装过程中,若系统提示此软件已安装过或因其他原因无法继续安装,但若我们确实想执行安装命令,可以在

-ivh后加一参数“-replacepkgs”:

rpm

-ivh

-replacepkgs

Linux-1.4-6.i368.rpm

4.有时我们卸载某个安装过的软件,只需执行rpm-e

<文件名>命令即可。

5.对低版本软件进行升级是提高其功能的好办法,这样可以省去我们卸载后再安装新软件的麻烦,要升级某个软件,只须执行如下命令:rpm

-uvh

<文件名>,注意:此时的文件名必须是要升级软件的升级补丁

6.

另外一个安装软件的方法可谓是Linux的独到之处,同时也是RMP强大功能的一个表现:通过FTP站点直接在线安装软件。当找到含有你所需软件的站点并与此网站连接后,执行下面的命令即可实现在线安装,譬如在线安装Linux-1.4-6.i368.rpm,可以用命令:

rpm

-i

ftp://ftp.pht.com/pub/linux/redhat/...-1.4-6.i368.rpm

7.

在我们使用电脑过程中,难免会有误 *** 作,若我们误删了几个文件而影响了系统的性能时,怎样查找到底少了哪些文件呢?RPM软件包提供了一个查找损坏文件的功宴空能,执行此命令:rpm

-Va即可,Linux将为你列出所有损坏的文件。你可以通过Linux的安装光盘进行修复。

8.Linux系统中文件繁多,在使用过程中,难免会碰到我们不认识的文件,在Windows下我们可以用“开始/查找”菜单快速判断某个文件属于哪个文件夹,在Linux中,下面这条命令行可以帮助我们快速判定某个文件属于哪个软件包:

rpm

-qf

<晌哪瞎文件名>

9.当每个软件包安装在Linux系统后,安装文件都会到RPM数据缓中库中“报到”,所以,我们要查询某个已安装软件的属性时,只需到此数据库中查找即可。注意:此时的查询命令不同于1和8介绍的查询,这种方法只适用于已安装过的软件包!命令格式:

rpm

-参数 <文件名>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12391849.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存