现在位置: 首页 > Linux > shell脚本 > 文章
expect的基本用法已关闭评论
2013年06月18日 shell脚本 ⁄ 共 5580字 ⁄ 被围观 40,839 views+
一、概述 我们通过Shell可以实现简单的控制流功能,如:循环、判断等。但是对于需要交互的场合则必须通过人工来干预,有时候我们可能会需要实现和交互程序如telnet服务器等进行交互的功能。而Expect就使用来实现这种功能的工具。 Expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预。Expect的作者Don Libes在1990年开始编写Expect时对Expect做有如下定义:Expect是一个用来实现自动交互功能的...
阅读全文
linux shell实现随机数多种方法(date,random,uuid)已关闭评论
2013年06月05日 shell脚本 ⁄ 共 3520字 ⁄ 被围观 10,429 views+
在日常生活中,随机数实际上经常遇到,想丢骰子,抓阄,还有抽签,非常简单就可以实现。那么在做程序设计,真的要通过自己程序设计出随机数那还真的不简单了。现在很多都是操作系统内核会提供相应的api,这些原始参数是获取一些计算机运行原始信息,如内存,电压,物理信号等等,它的值在一个时间段可以保证是唯一的了。好了,废话我就不说了。 shell脚本程序我们有那些获得随机数方法呢?  一、通过时间获得随机数(date) 这个...
阅读全文
脚本执行出现/bin/sh^M: bad interpreter错误提示已关闭评论
2013年04月28日 Linux基础, shell脚本 ⁄ 共 426字 ⁄ 被围观 17,993 views+
在页面http://www.centos.bz/2011/07/centos-nginx-init-script/上下载一个Nginx一个初始化脚本(用于启动、停止、查看状态),执行时遇到如下错误: [root@nginx ~]# /etc/init.d/nginx start bash: /etc/init.d/nginx: /bin/bash^M: bad interpreter: 没有那个文件或目录 错误分析: 我先详细检查了脚本内容,发现并没有错误,想到以前遇到过脚本格式导致不能执行的问题,于是查看脚本格式: [root@nginx ~]#vim  /etc/init.d/n...
阅读全文
linux流量监控脚本已关闭评论
2013年03月19日 shell脚本 ⁄ 共 825字 ⁄ 被围观 10,602 views+
#######################脚本内容如下####################### #!/bin/bash ##作用:监控eth0端口的流量 ##可以将eth0换为eth1等其他端口 ##作者:Barlow ##2012-12-10 #取初始流量值 R1=`cat /sys/class/net/eth0/statistics/rx_bytes` T1=`cat /sys/class/net/eth0/statistics/tx_bytes` # #暂停10秒后再次取值 sleep 10 R2=`cat /sys/class/net/eth0/statistics/rx_bytes` T2=`cat /sys/class/net/eth0/statistics/tx_bytes`...
阅读全文
用awk命令查找系统中隐藏的超级用户和密码为空的用户已关闭评论
2013年03月19日 shell脚本 ⁄ 共 224字 ⁄ 被围观 12,426 views+
一、判断系统中有几个uid为0的用户(也就是具有超级用户权限的用户) # awk -F: '$3==0 {print $1}' /etc/passwd 二、检测系统中密码为空的用户 # awk -F: 'length($2)==2 {print $1}' /etc/shadow 说明:这个例子中定义的shadow文件密码字段长度为2的用户,在centos等系统下,密码如果为空,会用两个!!表示,因此其长度为2,而正常的用户且密码不为空的,是采用加密存储的,其长度远大于2。
阅读全文
判断服务是否运行的shell脚本已关闭评论
2013年03月18日 shell脚本 ⁄ 共 198字 ⁄ 被围观 18,135 views+
用pgrep命令判断 #!/bin/bash ##作用:检测服务是否启动,服务以参数方式提交 ##作者:Barlow ## ##时间:2013-3-18 ## ser=`/usr/bin/pgrep $1` if [ "$ser" != "" ] then echo "The $1 service is running." else echo "The $1 service is NOT running." /sbin/service $1 start fi
阅读全文
Linux下批量添加用户已关闭评论
2013年03月18日 Linux基础, shell脚本 ⁄ 共 930字 ⁄ 被围观 10,595 views+
一、批量添加有规律的用户 如添加user1、user2……user50,具体多少个可以使用交互方式输入,用户前缀也使用交互方式输入: #!/bin/bash ##批量添加用户脚本## ##交互方式读取用户前缀和用户数## ##密码也采用交互输入,用户密码为密码前缀+用户序号 ##作者:Barlow## ##最后修改时间:2013-3-18## # #建立用户 echo "Please input username:" read name echo "Please input number of users:" read num n=1 while [ $n -le $num ...
阅读全文
Linux简单的备份脚本已关闭评论
2013年03月17日 shell脚本 ⁄ 共 998字 ⁄ 被围观 8,832 views+
一、编写脚本如下: 建立备份目录 # mkdir /backup 编辑备份脚本 # vi /backup/bak.sh 脚本内容如下: #!/bin/bash ##用途:备份mysql数据,删除k天前的数据## ##作者:Barlow## ##最后修订:2013-03-16## # #设定备份保留天数K K=7 #获取当前日期 TODAY=`date '+%Y%m%d'` #获取K天前日期 KDAY=`date -d "$TODAY - $K day" '+%Y%m%d'` #建立备份子目录 mkdir -p /backup/$1 #进行备份,并将结果写入日志 tar zcvf /backup/$1/$T...
阅读全文
Linux Shell常用技巧(二)已关闭评论
2013年03月11日 shell脚本 ⁄ 共 8435字 ⁄ 被围观 6,855 views+
七. grep家族: 1.  grep退出状态: 0: 表示成功; 1: 表示在所提供的文件无法找到匹配的pattern; 2: 表示参数中提供的文件不存在。 见如下示例: /> grep 'root' /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin /> echo $? 0 /> grep 'root1' /etc/passwd  #用户root1并不存在 /> echo $? 1 /> grep 'root' /etc/passwd1  #这里的/etc/passwd1文件并不存在 grep:...
阅读全文
Linux Shell常用技巧已关闭评论
2013年03月11日 shell脚本 ⁄ 共 6234字 ⁄ 被围观 8,403 views+
一.    特殊文件: /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty。其中/dev/null将会丢掉所有写入它的数据,换句换说,当程序将数据写入到此文件时,会认为它已经成功完成写入数据的操作,但实际上什么事都没有做。如果你需要的是命令的退出状态,而非它的输出,此功能会非常有用,见如下Shell代码: /> vi test_dev_null.sh #!/bin/bash if grep hello TestFile > /dev/n...
阅读全文
×