在网上看到shell模拟多线程的脚本,看了一下,估计对于新手还是很难理解,本文将进行更加详细的注解。 其实这个脚本并没有实现多线程,shell也根本不可能实现多线程。 此脚本的作用无非是限制几乎同时放入后台执行的进程数量而已,从而达到在提高脚本执行效率的同时又不明显增加负载的作用。
如果想进一步了解linux系统,熟悉一些系统底层的东西还是非常必要的,我们可以先了解一些linux命令是如何实现相关功能的,那么如何获得命令的源代码呢?本文将详细介绍一下。下面以获取cat命令的源代码为例说明:rpm -qif `which cat` 将显示如下信息:------------------------------------------------------------
/etc/profile 中添加如下内容: export LANG=zh_CN.UTF-8 export LC_ALL="en_US.ISO8859-1" export LANG="en_US.ISO8859-1" export LC_CTYPE="en_US.ISO8859-1" export LANG=zh_CN.eucCN
本文介绍的是在一个ip段内的服务器群实现时间同步。以此服务器群的一台机器作为ntpd服务器,服务器群的其他机器作为客户端。(1)时间同步服务端的配置 vi /etc/ntp.conf -------------------server 129.6.15.28 iburst # NIST, Gaithersburg, Marylandserver 132
freeBSD &
1、能用内建命令完成的功能尽量不要使用外部命令,因为使用外部命令会fork新的进程抢占cpu和内存资源。可通过type 命令查看命令是否为内建命令。2、在脚本中若有代码段需要重用时,最好写成函数形式,可提高脚本执行效能,原因是它将命令放在内存里,这样会更有效率。3、操作字符串时,能使用${}完成功能的尽量不要使用awk,sed等,原因类似第一条。4、尽量少用“|”(管道),管道是很耗资源的。下面我
昨天写了一个需求的应用脚本,根据实际需求最好能使它每隔3秒钟自动执行一次,可是crond似乎只支持到分,怎么办呢?第一种方法:当然首先想到的是写一个触发的脚本,在触发脚本中使用死循环来解决此问题,如下:cat kick.sh--------#!/bin/bashwhile : ;do /home/somedir/s
最近几天一直忙着做北京某机房多线,三线和双线的网速测试。crontab -e*/30 * * * * /bin/bash /root/wirespeed/test-wirespeed.sh每半小时取一次值。主要采用ping和wget的值来判断网速的优良。当然了traceroute也是很重要的参考项。#!/bin/bash#For testing the wirespeed of BJx
ilo密码忘了,只好更改了,方法如下:ipmitool user listipmitool user enable 3ipmitool user set password 3 mima最后的用户名和密码分别为:admin mima
解决方法如下: vi /etc/sysconfig/i18n写入以下内容:LANG="zh_CN.GB2312"SUPPORTED="zh_CN.GB2312:zh_CN:zh:zh_CN:zh:zh_TW.UTF-8:zh_TW:zh:en_US.UTF-8:en_US:en"SYSFONT="latarcyrheb-sun16"保存退出。. /etc/sysconfig/
今天早上起来看到非法信息报警邮件为空,非常纳闷,明明昨天已经调试好了的,怎么会?于是开始找原因,终于发现了问题的所在。 登录到中控,看那个过滤非法信息的脚本产生的log文件,果然为空,说明脚本执行了,但是没有产生结果。于是,我手动去执行那个脚本,结果很正
昨天晚上在国内各地机房的日志服务器上布控了一个应用需求的计划任务(crontab),计划今天早上7点准时执行的,然后一个小时后在中控端把执行的结果汇总发送邮件到相应的负责人(也是crontab)。但是刚刚收到的邮件邮件报警很多机房的日志服务器并没有执行计划任务。登录到那些服务器,重新设定时间测试果然不执行,非常怪异,解决方法如下:1.
1, echo $[$(find log/ -name *2009-11* |xargs du -s |awk '{sum+=$1}END{print sum}')/1024/1024]G说明: 统计一个月的日志量有多大。2, 需求:找某个分区最大文件?方法1:find /root -type f -exec stat -c "%s %n" {} \; |sort -nr|head -
下面的脚本是根据实际工作的环境,为了操作简便而写的,主要是select循环的用法,和大家分享一下。#!/bin/bash#Used for logining logserver quickly!#Written on xxxx.#Author:Levin.HAHA3='Choose which host you want to logi
下面这个脚本是用来监控全国各个机房哪些服务器无法与其相应的日志备份服务器相联通。假设每个机房有300台应用服务器,对应一台大容量的日志备份服务器。 这是我最近根据需要写的一个监控脚本,大家可以不必知道这个脚步的具体功能,只需要掌握其中的一些技巧就可以了。#!/bin/bash#
#!/bin/baship='1.1.1.12.2.2.23.3.3.34.4.4.45.5.5.56.6.6.6'ip_wrong='3.3.3.34.4.4.4'for i in $ipdoif grep -q -w $i <(echo -e "$ip_wrong\n");then :elsessh $i &
之前在使用ssh远程执行命令,当使用到awk的时候总是报错,而sed和grep都没有问题,以为awk不支持远程执行。最近经过测试找到了解决此问题的方法。举例:ssh 目标IP “awk ‘{print \$1}’文件名”说明:只要保证ssh使用的是“”,并且awk中的$加上转义即可。
工作中我每次进入中控机,都要习惯性的切换到我的工作所在的目录,然而目录很长每次切换目录都感觉很烦。所以我想了个小方法,和大家分享一下。在刚进入中控机的环境下,直接执行 ". cd"(“”里面的),即可进入到我的工作目录,怎么样相当快捷吧。我来说一下怎么实现的。在进入中控机的当前环境下:1, vi cd ---------cd /home/admin/levin/scripts/ ##你
按照下面的步骤依次执行即可。在linux环境里:wget http://ipython.scipy.org/dist/ipython-0.8.4.tar.gz说明:在官网下载ipython最新的tar包。tar zxvf ipython-0.8.4.tar.gz说明:解压下载的包。cd ipython-0.8.4说明:进入到解压后在当前目录下产生的目录。python setup.py instal
如果你确定你电脑的CPU支持64位,但是在虚拟机(VMware)上却无法安装64位系统(你安装的时候会有一个不支持64bit的提示),那么可以通过修改电脑的BIOS的默认设置来解决问题。 首先如何确定你电脑的CPU是否支持64bit呢?如果你电脑的CP
假如 假如我能牵到你的手 我要在落叶纷飞的秋林里把你陪伴 让你感受爱的浪漫 假如我能牵到你的手 我要在飘雪的银色世界里把你拥抱 让你体味爱的温暖 假如我能牵到你的手 我要在沉郁的黑夜里把你安慰 让你尝到爱的甜蜜 假如春天不再开花 夏天不再欣盛 秋天不再落叶 冬天不再飘雪 我会用一颗
风筝 爱情像放风筝 我在田野里疯狂地跑着 手中牵着慢慢放长的细线 线的一头是我 另一头是自己的心爱 风筝高飞的时候 我喜急而泣 线断的瞬间 我欲哭无泪
#!/bin/bash awk '{print $2}' list|uniq -c >linshi while read count second; do awk -v a=$second -v b=$count '$2==a{sum += $1};END {print sum/b}' list done < linshi rm -f linshi
♂梦中的相遇♀ 我们相遇在浪漫的冬季里 你看着我,我看着你 用目光编织美丽的回忆
本文介绍的是监控dell服务器和hp服务器的raid状态。只要有坏盘现象便会发出报警邮件,以便及时处理,避免数据丢失等严重后果。 对于脚本中的hpacucli命令可以参考:http://hi.baidu.com/5651741/blog/item/9b8
如果你是一枝花 我就是一阵轻风 像水纹一样轻抚你的脸庞
大家都知道在RedHat中yum的好处,可以解决依赖关系,轻松的安装和卸载软件包。下面的脚本是我当初在初学shell脚本编程时写的第一个可以完成实际功能的简单脚本,和大家分享一下。#!/bin/bash#This program is used for helping you configure yum for your s
雪花 一片雪花 轻轻地落在手心 化了
大家都知道其他编程语言都有注释大段代码的特殊符号,但却很少有人知道shell脚本的大段代码的注释方法,很多人写shell脚本在调试时注释代码的时候,都是使用#号的,这是一种非常正规正确的方法,但是如果注释的代码过多,可能就会浪费很多无辜的精力了:)下面我说一下shell脚本中注释大段代码的方法。 &nb
我们在编写shell脚本的时候,经常会遇到在脚本中使用awk或sed去调用shell环境中的变量的时候,下面我简单的说一下调用的方法。 sed一般使用单引号,sed引用shell变量时使用双引号即可,因为双引号是弱转义,不会去除$的变量表示功能,而单引号为强转义,会把$作为一
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号