当前位置:  技术问答>linux和unix

高级脚本分析-求助

    来源: 互联网  发布时间:2016-08-20

    本文导语:  本帖最后由 qihuanfengyun 于 2010-04-19 16:17:19 编辑 #!/bin/sh #$1 md device #exit 1 scsi1 disk is faulty #exit 2 scsi2 disk is faulty #exit 0 disks=`ls /sys/block/$1/md | grep dev-sd*` gotfaulty(){ for i in $disks do if $(grep faulty /sys/block/$1/md/$i/state >...

本帖最后由 qihuanfengyun 于 2010-04-19 16:17:19 编辑
#!/bin/sh
#$1 md device
#exit 1 scsi1 disk is faulty
#exit 2 scsi2 disk is faulty
#exit 0
disks=`ls /sys/block/$1/md | grep dev-sd*`
gotfaulty(){
for i in $disks
do
if $(grep faulty /sys/block/$1/md/$i/state > /dev/null)
then
bad=`echo $i | awk 'BEGIN {FS="-"} {print $2}'`
if [ -e /sys/bus/scsi/devices/0:0:0:0/block:sd*/$bad ]
then
exit 1
else
exit 2
fi
fi
done
exit 0
}
#No faulty disk found, faulty disk has been removed
nofaulty(){
for i in $disks
do
if $(grep in_sync /sys/block/$1/md/$i/state > /dev/null)
then
good=`echo $i | awk 'BEGIN {FS="-"} {print $2}'`
if [ -e /sys/bus/scsi/devices/0:0:0:0/block:sd*/$good ]
then
exit 2
else
exit 1
fi
fi
done
}

if [ $2 == "no" ]
then
nofaulty $1
else
gotfaulty $1
fi

 if [ -e /sys/bus/scsi/devices/0:0:0:0/block:sd*/$bad ]

|
1.if $(grep faulty /sys/block/$1/md/$i/state > /dev/null)
这个条件也就是如果grep faulty /sys/block/$1/md/$i/state > /dev/null这个命令返回值不为0,也就是在/sys/block/$1/md/$i/state中没有"faulty"这个单词.

2. bad=`echo $i | awk 'BEGIN {FS="-"} {print $2}'`
这个是以"-"为分隔符,输出$i的第二列
$i是disks=`ls /sys/block/$1/md | grep dev-sd*`这个命令输出中的某一行

3.if [ -e /sys/bus/scsi/devices/0:0:0:0/block:sd*/$bad ]
判断/sys/bus/scsi/devices/0:0:0:0/block:sd*/$bad文件存不存在,""是转义符



|
剩下一句 
$(ls /sys/devices/platform/oxnassata.0/host0/target0:0:0/0:0:0:0/ | grep block: | sed 's/^.*://g')
查找/sys/devices/platform/oxnassata.0/host0/target0:0:00:0:0:0/目录下文件名含有block: 的文件 然后把找到的文件名以任意字符开始到:结束的部分去掉(替换为空)  输出

a=$(B)  就是把B执行的结果赋给a  相当于a=`B`

|
看来不是对脚本不懂   你是想问一些不常见的文件是干什么的吧

|
学习了。

    
 
 

您可能感兴趣的文章:

  • 求助:请问怎么获得在个一个脚本中执行的另外个脚本的返回结果,如执行成功或失败
  • 求助:脚本文件和主程序通信问题
  • 求助几个SHELL脚本 我是 新手
  • 求助:linux脚本语言写SQL语句
  • 求助:Linux 脚本如何提取MAC地址
  • 脚本菜鸟。。。求助。。
  • 求助:shell脚本读取文件内容
  • 求助:使用sh脚本,把文件1.txt中的A都替换成B
  • 用户登陆后自动运行sh脚本,怎么写?(菜鸟求助)
  • crontab无法启动shell脚本,求助!
  • 求助一个Shell脚本问题!
  • shell脚本编写!菜鸟求助
  • 求助一个文档匹配的脚本
  • 【求助】如何同时连接并登录多个服务器,然后执行相同的维护脚本
  • bash脚本编写求助
  • shell 脚本求助
  • 备份数据库的脚本用不了了,求助!
  • [求助] 关于asterisk的检测脚本,谢谢!
  • 求助:脚本自动启动的问题、
  • shell脚本求助
  • MongoDB数据模型分析脚本 Variety
  • shell脚本分析一个文件
  • 请教:一个让程序自动重启的脚本,但是一直出错,请高手帮忙分析下
  • 使用shell脚本分析网站日志统计PV、404、500等数据
  • 帮我分析几个脚本程序
  • Oracle不同数据库间对比分析脚本
  • ScriptControl控件执行自定义VBS脚本示例分析
  • shell脚本实现的网站日志分析统计(可以统计9种数据)
  • sql server数据分组查询脚本分析
  • python自动化工具日志查询分析脚本代码实现
  • shell脚本分析 nginx日志访问次数最多及最耗时的页面(慢查询)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 红帽redhat下通过脚本和yum安装docker容器引擎的详细步骤
  • 脚本1调用脚本2,脚本2必须输入回车,如何在调用过程中自动输入回车
  • HTML 脚本语言介绍及<script>标签用法
  • 脚本中如何调用另外的一个脚本?
  • 脚本调用脚本出异常
  • shell 脚本中命令别名在脚本外无法使用
  • 想用shell脚本定时执行另一个脚本
  • shell脚本问题 关于父脚本和子脚本的问题
  • centos系统运行脚本,显示bash进程,能否以脚本名字显示?
  • 求救:修改系统启动脚本 不过脚本里面误写了阻塞命令
  • 如何传递参数给linux shell 脚本(当脚本从标准输入而不是从文件获取时)
  • 定时跑脚本编译C文件就报错,手动跑脚本就编译成功了.
  • 脚本如何自动输入密码??交互式脚本如何编写?
  • 请问在 LINUX下如何编辑脚本(可以直接运行脚本访问WINDOW系统)
  • 请问在脚本里怎么得到一个程序运行的返回值,脚本怎么返回值?
  • C语言调用shell脚本后,通过何种方法能获取脚本中变量的值
  • 请教一个问题,CRONTAB执行脚本和SSH登陆后调用脚本有什么不同?
  • windows上脚本调用UNIX的脚本
  • shell脚本如何调用另外一个shell脚本的函数?
  • 急救!关于Shell脚本删除过期文件的问题,Shell脚本达人乱入
  • 如何给shell脚本加密,脚本中有密码。最好是比较直接的,不要说让用 shc


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3