Welcome 微信登录

首页 / 操作系统 / Linux

一波实用的Bash Shell整理

一波实用的Bash Shell整理

作为一个命令行探索者,你或许发现你自己一遍又一遍重复同样的命令。如果你总是用ssh进入到同一台电脑,如果你总是将一连串命令连接起来,如果你总是用同样的参数运行一个程序,你也许希望在这种不断的重复中为你的生命节约下几秒钟。解决方案是使用一个别名(alias)。正如你可能知道的,别名用一种让你的shell记住一个特定的命令并且给它一个新的名字的方式。不管怎么样,别名有一些限制,它只是shell命令的快捷方式,不能传递或者控制其中的参数。所以作为补充,bash ...
编写Bash Shell通过gnuplot绘制系统性能数据图的方法

编写Bash Shell通过gnuplot绘制系统性能数据图的方法

使用步骤:1.设置一个定时任何 执行getperf.sh,采集性能数据2.将采集到性能数据文件,如:192.168.1.1.tar.gz 解压3.将性能分析的脚步performance_analyse.sh 放到解压后的目录中4.安装gnuplot程序(这里下载)5.将字体文件夹,拷贝到/usr/share/fonts/目录6.直接运行 bash performance_analyse.shgetperf.sh脚本内容如下:################...
一些Linux Shell中的权限相关知识总结

一些Linux Shell中的权限相关知识总结

一个文件一经创建,就具有三种访问方式:1) 读,可以显示该文件的内容。2) 写,可以编辑或删除它。3) 执行,如果该文件是一个s h e l l脚本或程序。按照所针对的用户,文件的权限可分为三类:1) 文件属主,创建该文件的用户。2) 同组用户,拥有该文件的用户组中的任何用户。3) 其他用户,即不属于拥有该文件的用户组的某一用户文件的全部信息包括以下:文件的位置。文件类型。文件长度。哪位用户拥有该文件,哪些用户可以访问该文件。节点。文件的修改时间。文件的权...
Shell脚本实现监视指定进程的运行状态

Shell脚本实现监视指定进程的运行状态

在之前的博客中,曾经写了自动化测试程序的实现方法,现在开发者需要知道被测试的进程(在此指运行在LINUX上的主进程的)在异常退出之前的进程的运行状态,例如内存的使用率、CPU的使用率等。现用shell脚本实现指定进程的运行状态。直接上代码。#!/bin/shecho "`date`"echo "Start $0---------"echo ""#每十秒监视一下sec=10#取得指定进程名为mainAPP,内存的使用率,进程运行状态,进程名称eval $(p...
Linux Shell 数组的创建及使用技巧

Linux Shell 数组的创建及使用技巧

linux shell在编程方面比windows 批处理强大太多,无论是在循环、运算。已经数据类型方面都是不能比较的。 下面是个人在使用时候,对它在数组方面一些操作进行的总结。1.数组定义[chengmo@centos5 ~]$ a=(1 2 3 4 5)[chengmo@centos5 ~]$ echo $a一对括号表示是数组,数组元素用“空格”符号分割开。2.数组读取与赋值得到长度:[chengmo@centos5 ~]$ echo ${#a[@]}5...
Shell动态生成数组的多种方法

Shell动态生成数组的多种方法

如果对linux shell 数组不是很熟悉的话,请看上一篇文章:linux shell 数组建立及使用技巧 ,这篇文章主要讲是动态生成数组系列。方法应该很多,我这里主要以一个求和计算的题目为例进行分析。题目:请用linux shell 写一段脚本,实现从1..1000中所有偶数的和值。方法一:通过while 循环得到需要的结果:start=1;total=0;while [ $start -le 1000 ];do[[ $(($start%2)) == ...
Shell时间运算及时间差计算方法

Shell时间运算及时间差计算方法

最近一段时间,在处理Shell 脚本时候,遇到时间的处理问题。 时间的加减,以及时间差的计算。一、时间加减这里处理方法,是将基础的时间转变为时间戳,然后,需要增加或者改变时间,变成 秒。如:1990-01-01 01:01:01 加上 1小时 20分处理方法:a.将基础时间转为时间戳time1=$(date +%s -d "1990-01-01 01:01:01")echo $time1631126861 【时间戳】b.将增加时间变成秒[root@loca...
基础的Linux Shell技巧小结

基础的Linux Shell技巧小结

一、自动补齐:[Tab]这个技巧很多人都应该会了,就是当输入命令,目录或者是文件名的时候按 [Tab] 键。系统就会帮你补齐可能要输入的东西,如果有多个选择系统会列表出来。你可以看清楚之后再多输入一个或多个 charactor ,再按[Tab]。实验:$ ec按[Tab], 补齐为:$ echo二、查找和执行历史命令:[Ctrl + r], [Ctrl + p], [Ctrl + n]在终端中按捉 [Ctrl] 键的同时 [r] 键,出现提示:(rever...
Shell脚本实现批量生成nagios配置文件

Shell脚本实现批量生成nagios配置文件

如果管理的站点和服务器较多的情况下,每次修改配置文件都相当痛苦。因而想到了用shell脚本来批量生成配置文件和配置数据。下面这个脚本是为了批量生成nagios监控配置文件的一个shell脚本程序。其原理是事先定义一个shell脚本模板,然后每个需要监控的站点复制一份模板替换掉模板文件里面的变量。1、准备模板文件webcheck.templatemore webcheck.template ###################WEBURL define s...
Shell中eval的用法示例

Shell中eval的用法示例

功能说明:告知shell取出eval的参数,重新运算求出参数的内容。语 法:eval [参数]补充说明:eval可读取一连串的参数,然后再依参数本身的特性来执行。参 数:参数不限数目,彼此之间用分号分开。1.执行命令行之前扫描它两次,再次运算求出参数的内容。复制代码 代码如下:[root@localhost blue]# a="ls |more"[root@localhost blue]# $a #ls将 | 和 more 看成了参数,而不是将文件按页...
脚本实现SSH登录邮件报警

脚本实现SSH登录邮件报警

登录保护是一个非常重要的环节,下面通过图文并茂的方式给大家详细讲解下:前两天@cyy 给我发了一个图然后我就想到USHQ的ssh登录app通知功能,然后就像如果把这个部署到自用的服务器就好了。至少多一层安全系数。首先要感谢@Legion 帮忙搞定了几个错误以及搞定了Geo2IP的JSON转换。 (P.S.此人为自动化运维大神级人物,现任职于德国一数据统计企业。)当然,我和他相比我就是战五渣了...大家一定要多向 @Legion 学习啊~~说下需要做的准备:...
使用Bash Shell对目录中的文件实现递归式拷贝

使用Bash Shell对目录中的文件实现递归式拷贝

前言 今天工作中遇到了一个问题,如果将目录A中的文件拷贝到目录B中(前提目录B没有该文件),并保持文件在目录A的结构。项目重点如下: 需要在目录B中保持文件在目录A中的结构。假设A目录文件 A/test/1.txt,转移到目录B中应该是B/test/1.txt。同时还需要考虑目录B中是否存在test目录,多级目录就要考虑递归了。(还好,bash shell里写个目录递归遍历还是比较简单的。) 需要考虑A中文件是否在B中已经存在同名文件,如果存在,则不需要拷...
使用Bash Shell获取文件名和目录名的简单方法

使用Bash Shell获取文件名和目录名的简单方法

前言还是今天再写一个自动化打包脚本,用到了从路径名中获取最后的文件名。这里记录一下实现过程。当然,最后我也会给出官方的做法。(ps:很囧,实现完了才发现原来Bash Shell有现成的函数)获取文件名假设给定的路径名为: /tmp/csdn/zhengyi/test/zhengyi.txt awk解法用“/”做分隔符,然后打印出最后的那一部分。实现代码如下: resFile=`echo /tmp/csdn/zhengyi/test/adb.log | aw...
<< 171 172 173 174 175 176 177 178 179 180 >>