当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [原创]整理了一个Ubuntu的一个安装的小脚本
帖子发表于 : 2008-06-26 16:30 

注册: 2006-06-29 10:38
帖子: 70
送出感谢: 0 次
接收感谢: 0 次
整理了一个Ubuntu的一个安装的小脚本。

这个脚本可以直接使用或者加一个参数。直接使用的时候进行apt-get的update和upgrade,添加一个参数的时候进行安装此参数代表的软件包。

做这个脚本关键是想把每次执行apt-get的log过程输出到固定目录下以当前时间命名的文件中。方便日后查看。

代码:

#!/bin/bash

#
# param
#    $1 - package to install
#

DATELOG=$(date +%Y_%m_%d_%H%M)

LOG=/media/EXCHANGE/ubuntu_update_log

CURDIR=$(pwd)

echo
echo "****************************************"
echo " 1 : do the dir utils "
echo "****************************************"
echo
if [ -d $LOG ];then
    echo "local log dir already exist"
else
    echo "local log dir not exist, mkdir it's"
    mkdir $LOG -p
fi

if [ $# -eq 1 ];then

    echo
    echo "****************************************"
    echo " 1.1 : apt-get update the ubuntu "
    echo "****************************************"
    echo
    sudo apt-get update -y 2>&1 | tee -a $LOG/apt-get_update_$DATELOG.log
    sudo apt-get upgrade -y 2>&1 | tee -a $LOG/apt-get_upgrade_$DATELOG.log
    else
        if [ $# -eq 2 ];then
            echo
            echo "****************************************"
            echo " 1.2 : apt-get install the package "
            echo "****************************************"
            echo
            sudo apt-get install $2 -y 2>&1 | tee -a $LOG/apt-get_install_$2_$DATELOG.log
        fi
fi

cd $CURDIR


示例:
代码:
./test -- 进行update和upgrade

代码:
./test gcc -- 安装gcc


修改了一下下
原来的脚本不怎么好用,重新修改了判断条件。
另外,我的板子跑ubuntu的确有点慢了,一般装个啥费劲很了,所以才整了这么个生成log文件的脚本。

代码:
#!/bin/bash

#
# param
#   $0~$9 - package to install
#

DATELOG=$(date +%Y_%m_%d_%H%M)

LOG=/media/EXCHANGE/ubuntu_update_log

CURDIR=$(pwd)

echo
echo "****************************************"
echo " 1 : do the dir utils "
echo "****************************************"
echo
if [ -d $LOG ];then
   echo "local log dir already exist"
else
   echo "local log dir not exist, mkdir it's"
   mkdir $LOG -p
fi

if [ $# -eq 0 ];then
   echo
   echo "*******************************"
   echo "apt-get update the system "
   echo "*******************************"
   echo
   sudo apt-get update -y --force-yes 2>&1 | tee -a $LOG/apt-get_update_$DATELOG.log
   DATELOG=$(date +%Y_%m_%d_%H%M)
   sudo apt-get upgrade -y --force-yes 2>&1 | tee -a $LOG/apt-get_upgrade_$DATELOG.log
else
   echo
   echo "*******************************"
   echo " apt-get install ${*} "
   echo "*******************************"
   echo
   declare -i i=0
   declare -i n=$#
   while [ $i -lt $n ]
   do
      echo
      echo "*******************************"
      echo " apt-get install $1 "
      echo "*******************************"
      echo
      i=i+1
      DATELOG=$(date +%Y_%m_%d_%H%M)
      sudo apt-get install $1 -y --force-yes 2>&1 | tee -a $LOG/apt-get_install_$1_$DATELOG.log
      shift
   done
fi


保存为refresh_system
使用:
1)更新系统:
代码:
./refresh_system

2)安装软件
代码:
./refresh_system a b c d


最后由 greegree 编辑于 2008-07-01 16:05,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-06-26 16:32 
头像

注册: 2006-07-02 11:16
帖子: 12522
地址: 廣州
送出感谢: 0 次
接收感谢: 8
看 /var/log/dpkg.log 和 apt 的log


_________________
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-06-26 16:43 
头像

注册: 2006-04-12 20:05
帖子: 8495
地址: 杭州
送出感谢: 0 次
接收感谢: 8
汗..就为了日志?


_________________
关注我的blog: ε==3


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-06-26 16:55 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 272
man logrotate 吧。log管理机制范围多的。不要自己去搞。


_________________
● 鸣学


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:cddf96aa5q 和 5 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译