摘要:由于linux的tar命令不支持批量解压,所以很多网友编写了好多支持批量解压的shell命令,收集了一下,供大家分享:第一:for tar in *.tar.gz; do tar xvf $tar; donefor tar in *.tar.bz2; do tar xvf $tar; done#!/bin/bashfor tar in *.tar.gzdo tar xvf $tardone第二:用tar命令批量解压某个文件夹下所有的tar.gz文件l
2016年11月16日
批量删除用户
摘要:#!/bin/bashecho "Please input username:"read nameecho "Please input number:"read numsum=0while [ $sum -lt $num ]dosum=`expr $sum + 1`/usr/sbin/userdel -r $name$sumdone
分类:Shell
2016年11月16日
批量添加用户
摘要:#!/bin/bash#The script to add user#The script to add user#/etc/passwd infoecho "please input username:"read nameecho "please input number:"read numn=1while [ $n -le $num ]do /usr/sbin/useradd $name$n n=`expr $n + 1`done#/e
分类:Shell
2016年11月16日
删除指定的登陆用户
摘要:#!/bin/bash#FileName killuser.sh#The script to kill logined user.#Using #/bin/bash killuser.sh rootusername="$1"/bin/ps aux | /bin/grep $username | /bin/awk '{ print $2 }' > /tmp/temp.pidkillid=`/bin/cat /tmp/temp.pid`for PID in $killiddo /bin/kill -9 $PID 2 > /dev/nulldone
分类:Shell
2016年11月16日
测试web服务器是否停止
摘要:#!/bin/bash#"if...else" usage#FileName test.apache#Using this program to show your system's services.echo "Now,the web services of this Linux system will be detect..."echo #Detect www service web=`/usr/bin/pgrep httpd`if [ "$web" != "" ]then &nb
分类:Shell
2016年11月16日
自动备份命令autobak.sh
摘要:#/bin/bash#backup files by date#filename autobak.shDATE=`/bin/date +%Y%m%d`/bin/tar -cf /backup/$1.$DATE.tar $1 > /dev/null 2>>/backup/$1.bak.log/bin/gzip /backup/$1.$DATE.tarif [ $? -eq 0 ] then echo "$1 $DATE backup suc
分类:Shell
2016年11月16日
用sed删除行首行尾的空格和Tab
摘要:sed 's/^[. ]\{1,\}//g' filesed 's/^ \+//' filesed "s/^ *//g" bbbbsed 's/^[ \t]*//'sed -r 's/^[[:blank:]]+//g'sed 's/^[[:blank:]]\+\(.*\)/\1/'用sed删除行首行尾的空格和Tab在UNIX上使用sed命令进行字符串处理中常常遇到的问题就是行首行尾的空格怎么删除。 下面介绍sed是怎样实现的,当然awk同样可以。 1:行首空格 sed 's/^[ \t]*//g' 说明:
分类:Shell
2016年11月16日
常用脚本命令集
摘要:如何用脚本实现分割文件 1. #!/bin/bash2. 3. if [ $# -ne 2 ]; then4. echo 'Usage: split file size(in bytes)'5. exit6. fi7. 8. file=$
分类:Shell
2016年11月16日
用tar编写脚本进行差量备份
摘要:#!/bin/shdate=`date +%m%d`sourcedir=/usr/aaatargetdir=/home/bbbcase $1 in 'f')#Full Backup outlogname=$targetdir/FO$date.log inlogname=$targetdir/FI$date.log echo Performing full bac
分类:Shell
2016年11月16日
Linux 查看网络流量具体实现
摘要:Linux 查看网络流量具体实现2010-06-13 15:08 佚名 csdn 我要评论(0) 字号:T | T数值有所变化,两者的差值就是过去一段时间的流量。可是,这也太不人性化了……正所谓自己动手,丰衣足食,我们自己来写一个Linux 查看网络流量脚本,实时显示并刷新!在GUI下面,有一大把的工具可以显示网络流量,那么,命令行下面怎么办?显然办法是有的,比如,ifconfig,Linux 查看网络流量会
分类:Shell
2016年11月16日
测试局域网内主机是否alive的小脚本
摘要:此脚本用于检查192.168.1.100到192.168.1.200之间的主机是否alive。脚本如下:#!/bin/bash#Checks to see if hosts 192.168.1.100-192.168.1.200 are alivefor n in {100..200}; do host=192.168.1.$n ping -c2 $host &>/dev/null &nbs
分类:Shell
2016年11月16日
Linux批量生成生成帐户脚本
摘要:此脚本应用于生产环境下生成帐户,也可生成成百上千个密码相同的帐户。脚本代码如下:#!/bin/bashfor name in tom jerry joe janedo useradd $name echo redhat | passwd --stdin $namedone自己使用的时候,用自己需要的帐户名列表替换掉这个代码范例里的tom jerry joe jane等字段即可。密 码都是redhat,可以让用
分类:Shell
2016年11月16日
自动监控ADSL并重拔号的shell脚本
摘要:公司办公室的adsl爱掉线,一掉的话网关的gateway就没了。因此编写了下列脚本:#!/bin/bashwhile :do if route | tail -l | grep "0.0.0.0"then&>/dev/nullelseadsl-stopadsl-startfisleep 10done执行脚 本方法: nuhup sh route.sh &注意前面要用上nohup,这样避免root用户logout时此脚本也退出生效的问题。
分类:Shell
2016年11月16日
SVN的版本库的批量备份
摘要:实现其功能蛮简单,主要是用了svnadmin hotcopy,这东东功能很强大,我经常用于svn的版本库的转移(顺便说一句,上次不小心误操作将库删光了,很轻松的用svnadmin hotcopy将其恢复过来了)。for PROJECT in test project svntestdo cd ${SVNDIR} ${SVNADMIN} hotcopy ${PROJECT} ${BACKDIR}/${DATE}/${PROJECT} --clean-logs cd ${BACKDIR}/${DATE}&nb
分类:Shell
2016年11月16日
Keepalived的监控切换脚本
摘要:实现功能如下:针对Nginx+Keepalived,编写nginx监控脚本nginx_pid.sh,放置在后台一直监控nginx进程; 如进程消失,尝试重启nginx,如是失败则立即停掉本机的keepalived服务,让另一台负载均衡器接手。此脚 本详细内容如下:#!/bin/bash while :donginxpid=`ps -C nginx --no-header | wc -l`if [ $nginxpid -eq 0 ];thenulimit -SHn 65535 #在并发数很大的情况下,连接数过小
分类:Shell
2016年11月16日
用FTP同步服务器
摘要:许多系统管理员喜欢用rsync同步二台服务器之间的数据,但我们更喜欢用FTP来实现,其好处是:FTP比rsync更能耗尽带宽,所以它更适合同步数据库(尤其是几百G的数据) 配置起来相当方便,尤其是用pureftpd rsync的优势是可以快速海量同步小文件,比如二级目录或三级目录下的批量图片等 基本上FTP和rsync同步各有优势,看系统管理员的取舍了。以下是本部分要介绍的FTP同步的shell脚本
分类:Shell
2016年11月16日
MySQL的热备份脚本
摘要:#!/bin/bashPATH=/usr/local/sbin:/usr/bin:/bin # The Directory of BackupBACKDIR=/usr/mysql_backup# The Password of MySQLROOTPASS=password # Remake the Directory of Backuprm -rf $BACKDIRmkdir -p $BACKDIR # Get the Name of DatabaseDBLIST=`ls -p /var/lib/mysql | grep / | tr -d /`# 偷瞄了下我同事写脚本的方式,发现他直接将DBLIST一个个手动敲
分类:Shell
2016年11月16日
删除所有以#开头的行
摘要:#!/bin/bash#ignore_hashecho -n "Enter you file name or full directory name:"read ANSINPUT_FILE=$ANSif [ -s $INPUT_FILE ]; thenwhile read LINEdo case $LINE in &nb
分类:Shell
2016年11月16日
再谈如何学习Linux,来自一线专家的经验总结
摘要:记得最早接触Linux是在2000年,那个时候,我还在上大学,一个同学从荷兰归来,带回一个Linux的拷贝版,记得版本还是Redhat6.2。曾经为安装这个系统让我们忘记疲劳,挑灯夜战,不亦乐乎。那时Linux的学习资料还很少,能够学习的书籍也不多,网上Linux技术社区也很少,就凭着Redhat6.2自带的几页使用说明开始了学习linux的生涯。转眼间,十几年过去了,我也与Linux相伴了10多年,