三个常用的linux脚本的分析(删除无用的内核和拷贝显示进度条,关闭qq后台)

1.删除linux升级内核后,无用的内核:

命令为:

dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge


dpkg:“Debian Package ”的简写,是一个底层工具,用法参考:http://baike.baidu.com/view/1314054.htm,这里-l参数是为了搜索deb包。

dpkg -l 'linux-*':列出所有匹配‘linux-’形式的Debian安装包

sed '/^ii/!d:保留以ii开头的行,其他行删除

'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d: 将正在使用的内核从打印行里面删除掉

s/^[^ ]* [^ ]* \([^ ]*\).*/\1/:

/[0-9]/!d:保留带数字的行

xargs sudo apt-get -y purge:将多行参数通过xargs传递给卸载命令


xargs参考:http://baike.baidu.com/link?url=SXKZQj7oGqMNvEJKUalCQYasZhkTMy8Nx8qJSBsISC-WL6vQP-ztONt7qXE16gh3SdQhGAlAEEEKhW31r2n5Oq


2.拷贝文件的时候显示进度条

#!/bin/bash
trap 'exit_fun' 2

usage(){
        echo "Usage: `basename $0` \"src file\" \"dst file\""
        exit 1
}

exit_fun(){
        echo -e "\033[?25h"
        kill -9 $(ps -ef|awk '/ [c]p /{print $2}') &>/dev/null
        exit 1
}

[ "$#" -ne "2" ] && usage
[ -d "$2" ] && k=${2%%/}/`basename $1` || k=$2

fromsize=`ls -s $1|cut -d" " -f1`
cp $1 $k &
start=`date +%s`
sleep 0.2
echo -ne "\033[?25l"
while :;do
        tosize=`ls -s $k|cut -d" " -f1`
        x=`echo "$tosize $fromsize"|awk '{print int($1*100/$2)}'`
        [ $x -eq 99 ] && x=100
        echo -n "["
        for((i=0;i<x;i=$i+2));do echo -n "=";done
        echo -n ">"
        for((j=i;j<=99;j=$j+2));do echo -n " ";done
        now=$[`date +%s` - $start]
        [ $now -eq 0 ] && now=1
        avg=$[$tosize/$now/1024]
        printf "]  %4s%%  %4sM/s" $i $avg
        [ $x -ge 100 ] && break
        sleep 0.1
        echo -ne "\r"
done
echo -e "\033[?25h"

echo显示转意字符的解析:

http://blog.chinaunix.net/uid-20682890-id-3180911.html


3.关闭longene qq的进程

ps aux | grep /opt/longene/qq | grep -v 'grep'| awk '{print $2}'|sed 's/^/sudo kill /'| sh -x










  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值