免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

sh/bash/dash/ksh/zsh等Shell脚本
糊涂的小强
帖子: 71
注册时间: 2014-04-28 14:33
系统: ubuntu12&centos6

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#46

帖子 糊涂的小强 » 2014-04-29 14:39

你好,最近想学习shell编程,但苦于方法不当进展很慢,这里看楼主编程能力确实很好,请教下学习方法,是找本书照着操作好呢还是怎么好,有什么书可以推荐下吗 :em01
onlylove
论坛版主
帖子: 5371
注册时间: 2007-01-14 16:23

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#47

帖子 onlylove » 2014-04-29 21:01

daf3707 写了:今天才几号,这脚本超前了?
嗯,神奇的穿越
#include <stdio.h>
void main()
{
double world;
unsigned letter;
short stay;
long memories;
printf("I miss you.\n");
}
头像
lxf1992521
帖子: 240
注册时间: 2011-06-26 18:28
联系:

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#48

帖子 lxf1992521 » 2014-04-29 23:28

糊涂的小强 写了:你好,最近想学习shell编程,但苦于方法不当进展很慢,这里看楼主编程能力确实很好,请教下学习方法,是找本书照着操作好呢还是怎么好,有什么书可以推荐下吗 :em01
《高级Bash脚本编程指南》
译者 杨春敏 黄毅 :em11
糊涂的小强
帖子: 71
注册时间: 2014-04-28 14:33
系统: ubuntu12&centos6

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#49

帖子 糊涂的小强 » 2014-04-30 9:43

lxf1992521 写了:
糊涂的小强 写了:你好,最近想学习shell编程,但苦于方法不当进展很慢,这里看楼主编程能力确实很好,请教下学习方法,是找本书照着操作好呢还是怎么好,有什么书可以推荐下吗 :em01
《高级Bash脚本编程指南》
译者 杨春敏 黄毅 :em11
怎么网上没有卖这本书的,都是电子档,想买本实体书,看着舒服,楼主哪里买得
ardin
帖子: 39
注册时间: 2007-01-28 16:08

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#50

帖子 ardin » 2014-05-26 18:34

ardin 写了:
lxf1992521 写了:
ardin 写了::em04 还有这样的好人,不好好麻烦他一下都不好意思。。

帮忙写一个:判断指定网段中还有没有活的机器,如果没有,就关掉自己。
本机装了arping的,最好还要有Log。
......
注意注意: 此脚本有危险操作,不了解其含义的最好不要运行它。
:em06 :em06
呃,竟然忘记检查在线的用户,昨天在服务器上工作时它竟然 很 不给面子的当着我的面关机。。。

下面是改进版:
用途:检测 192.168.1.100 ~ 192.168.1.200 (dhcp 的分配范围)之间的电脑是否有开机, 如果没有,检查本机是否有用户登录,如果都没有,关掉网的 Windows2003 服务器,然后关掉自己。
用法:加入到 crontab 中运行,从晚上22:00开始,每小时运行一次。

代码: 全选

#Mins	Hours	Days	Months  Day of the week Command
0,30 22,23,0-6	*       *       *       /opt/bin/auto-down.sh
代码:

代码: 全选

#!/bin/bash 

IPRange=192.168.1.
IPStart=100
IPStop=200                                                                    
Ethx=enp2s0
IPFile=/tmp/arping.txt
WHOFile=/tmp/who.txt
LogFile=/var/log/auto-down.log
Win1=61
Win2=62

is_anymachine_live ()
{
    for (( IP=IPStart; IP<=IPStop; IP+=1 ))
    do
        arping -I $Ethx -c 3 $IPRange$IP > $IPFile
        result=$( grep Received $IPFile | awk '{print $2}' )
        if [[ "$result" != 0 ]] ; then
            return 1
        fi
    done
    return 0
}   # ----------  end of function is_anymachine_live ----------

is_anyone_online ()
{
    w>$WHOFile
    result=$(awk 'NR==1{print $6}' $WHOFile)
    if [[ "$result" != 0 ]] ; then
        return 1
    fi
    return 0
}   # ----------  end of function is_anyone_online  ----------

haltwin2k3 ()
{
    # 关闭网中的windows 2003 服务器。
    net rpc shutdown -f -U administrator%passwd -I $IPRange$Win1
    net rpc shutdown -f -U administrator%passwd -I $IPRange$Win2
}   # ----------  end of function haltwin2k3  ----------

# main
if ( is_anymachine_live ) ; then
    if ( is_anyone_online ) ; then
        echo "<<< AT `date` >>> " >> $LogFile
        echo "<<<>>> Now halt windows 2003 servers $IPRange$Win1, $IPRange$Win2" >> $LogFile
        haltwin2k3 
        rm $IPFile
        # 注意:现在要关机!!
        echo "<<<>>> Now halt THIS machine" >> $LogFile
        /sbin/halt 
    else 
        result=$(awk 'NR==1{print $6}' $WHOFile)
        echo "<<<<<< at `date`, still has $result user online." >> $LogFile
        who >> $LogFile
        echo ">>>>>> Don't Panic." >> $LogFile
        rm $WHOFile 
    fi
else 
    echo "<<<<<< at `date`, still has machine run." >> $LogFile
    cat $IPFile >> $LogFile
    echo ">>>>>> Don't Panic." >> $LogFile
    rm $IPFile
fi                                                 
leavingDream
帖子: 39
注册时间: 2012-03-03 22:36

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#51

帖子 leavingDream » 2014-07-07 16:11

楼主能不能帮我写一个能记录键盘按键,鼠标点击操作的脚本,而且可以开机登录前就自动运行,多谢
leehom
帖子: 2
注册时间: 2014-06-12 9:59
系统: deepin

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#52

帖子 leehom » 2014-07-15 9:33

我自己的脚本地址 https://github.com/clh021/lub
viewtopic.php?f=21&%20t=206287
由billbear在08年发布的脚本
我的脚本空间,在保存收藏原版的同时,自己进行改编,方便平时需要
但是遇到了一个问题。特此向您求助。

年初,我开始由lubuntu转向linuxdeepin,脚本在linuxdeepin2013上面运行良好,但是在deepin2014上只能备份,恢复系统的时候,grub无法安装成功。
linuxdeepin2014基于ubuntu14.04版本
我在linuxdeepin2014上也发布了求助信息,里面有当时的详细错误截图
http://www.linuxdeepin.com/forum/25/22739
里面为了方便问题重现所以直接清除grub然后安装grub恢复启动项的方式,我希望可以将脚本改为可以兼容的ubuntu更高版本的情况,
据说只要加一些判断就好了,所以在此向您求助。

lub深受大家的喜爱,如果升级了系统,就没有了这么小巧精致高效的脚本工具,多可惜啊!
先拜谢了!
头像
qy117121
论坛版主
帖子: 50587
注册时间: 2007-12-14 13:40
系统: Winbuntu
来自: 志虚国乌由市
联系:

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#53

帖子 qy117121 » 2014-07-15 11:28

免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新

楼主是从未来来的 ?
渠月 · QY   
本人只会灌水,不负责回答问题
无聊可以点一下→ http://u.nu/ubuntu

邮箱 chuan@ubuntu.org.cn
头像
k9288k
帖子: 812
注册时间: 2012-02-21 22:27
系统: Ubuntu12.04

Re: 免费写shell脚本,和发布自己用的脚本!【长期有效!】【2014-11-24更新】

#54

帖子 k9288k » 2014-10-15 19:59

:em11
回复