Shell
shell脚本
白昼ron
精通服务器、存储及虚拟化技术,拥有大量的项目实施经验。熟悉VMware vSphere(Horizon)、Microsoft Hyper-V(SystemCenter)、华为 FusionComputer(CloudStack)、华三CAS(CloudOS)、Citrix XenServer(XenDesktop)等虚拟化产品,掌握各厂家服务器及存储设备硬件技术、Windows AD域技术、主流Linux操作命令、Oracle Rac部署与基础运维技术等。
展开
-
用Shell脚本定时监控Linux下的进程状态并自动重启
以mysql为例,先上脚本,如下:#!/bin/bashps -ef | grep mysqld | grep -v grepprocessstart=`service mysqld start`if [ $? -ne 0 ]thenecho "start process......"echo "$processstart"elseecho "runing......"fi原创 2017-06-27 11:49:05 · 10724 阅读 · 1 评论 -
Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
变量名只能包含数字、字母和下划线,因为某些包含其他字符的变量有特殊含义,这样的变量被称为特殊变量。例如,$ 表示当前Shell进程的ID,即pid,看下面的代码:$echo $$运行结果29949特殊变量列表变量含义$0当前脚本的文件名$n传递给脚本或函数的参数。n 是一个数字,表示第几个参数。原创 2017-10-20 16:11:43 · 1295 阅读 · 0 评论 -
检测Linux系统中bash shell漏洞
检测命令如下:[root@CentOS66 ~]# env x='() { :;}; echo be careful' bash -c "echo this is a test"be careful #如果返回此行,表示存在漏洞this is a test原创 2017-10-20 09:53:11 · 1788 阅读 · 0 评论 -
查看CentOS系统的shell脚本语言支持情况
命令如下:[root@CentOS66 ~]# cat /etc/shells /bin/sh # 这是Linux里常用的Shell,指向/bin/bash/bin/bash # 这是Linux里常用的Shell,也是默认使用的Shell/sbin/nologin # 这是Linux里常用的Shell,用于禁止用户登录/bin/dash/bin原创 2017-10-20 09:13:04 · 3395 阅读 · 0 评论 -
Shell开发环境vim编辑器的配置文件vimrc的参数优化
Linux环境下为了方便Shell的开发,对配置文件vimrc的参数需要有一些的优化。参数如下:"""""""""""""""""""""""""""""""""" => 全局配置"""""""""""""""""""""""""""""""""" 关闭兼容模式set nocompatible" 设置历史记录步数set history=100" 开启相关插件filety原创 2017-09-27 15:26:59 · 3296 阅读 · 0 评论 -
Shell编程面试题6_监控IP连接数,超过100封掉该IP
老男孩出的Shell编程企业面试题5:写一个脚本解决DOS攻击生产案例提示:根据web日志或者或者网络连接数,监控当某个IP并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频率每隔3分钟。防火墙命令为:iptables -I INPUT -s 10.0.1.10 -j DROP。我的Shell脚本如下:#/bin/bash#envir原创 2017-08-17 12:39:23 · 2918 阅读 · 0 评论 -
Shell编程面试题5_实现判断10.0.0.0/24网络里,当前在线用户的IP
老男孩出的Shell编程企业面试题5:写一个脚本,实现判断10.0.0.0/24网络里,当前在线用户的IP有哪些(方法有很多)我的Shell脚本如下:#/bin/bashfor I in `seq 1 255`do ping -c 1 10.0.0.$I &>/dev/null if [ $? -eq 0 ] t原创 2017-08-15 16:21:42 · 3907 阅读 · 2 评论 -
Shell编程面试题4_批量创建Linux用户并设置密码
老男孩出的Shell编程企业面试题3:批量创建10个系统帐号oldboy01-oldboy10并设置密码(密码为随机8位字符串)。我的Shell脚本如下:#/bin/bashfor num in 01 02 03 04 05 06 07 08 09 10do username=oldboy$num password=`hea原创 2017-08-10 15:24:08 · 3294 阅读 · 0 评论 -
Shell编程面试题2_批量创建随机名称的文件
老男孩出的Shell编程企业面试题2:使用for循环在/oldboy目录下通过随机小写10个字母加固定字符串oldboy批量创建10个html文件,名称例如为:123456[root@oldboy oldboy]# sh /server/scripts/oldboy.sh[root@原创 2017-07-26 17:15:24 · 1578 阅读 · 0 评论 -
Shell编程面试题3_批量修改某一目录下的所有文件名
老男孩出的Shell编程企业面试题3:将“/oldboy/”目录下的文件名中的oldboy全部改成oldgirl(用for循环实现),并且html改成大写。我的Shell脚本如下:#!/bin/bashdir=/oldboy/for file in $dir*do if [ -f $file ] then原创 2017-07-27 11:32:41 · 2497 阅读 · 0 评论 -
Shell脚本监控Linux系统CPU使用率
Shell脚本如下:#/bin/bash#environment variablesource /etc/profile#cpucpu_us=`vmstat | awk '{print $13}' | sed -n '$p'`cpu_sy=`vmstat | awk '{print $14}' | sed -n '$p'`cpu_id=`vmstat | awk '{print原创 2017-07-06 17:39:47 · 8207 阅读 · 2 评论 -
Shell脚本监控Linux系统硬盘各分区使用率
Shell脚本如下:#/bin/bash#disk spacefor d in `df -P | grep /dev | awk '{print $5}' | sed 's/%//g'`do if [ $d -gt 20 ]; then msg="TIME:$(date +%F_%T)原创 2017-07-04 16:23:32 · 3272 阅读 · 0 评论 -
Shell脚本监控Linux系统内存使用率
Shell脚本如下:#/bin/bash#environment variablesource /etc/profile#memorybu=`free | awk 'NR==2{print $6}'`ca=`free | awk 'NR==2{print $7}'`us=`free | awk 'NR==2{print $3}'`to=`free | awk 'NR==2...原创 2017-06-30 17:33:46 · 6092 阅读 · 0 评论 -
shell变量的子串的截取/删除/替换
${#string} 返回$string的长度${string:position} 在$string中,从$position位置之后开始提取子串${string:position:length} 在$string中,从$position位置之后开始提取$length长度的子串[root@localhost SHELL]# NAME="ni hao, ming tia转载 2017-10-23 16:35:25 · 2580 阅读 · 0 评论