欢迎光临IT网Linux学习频道

当前位置: > shell编程 >
  • [shell编程] 一个简单的文件增量备份shell脚本 日期:2014-09-10 22:38:57 点击:122 好评:0

    一个简单的文件增量备份shell脚本,有需要的朋友可以参考下。 复制代码 代码如下: #!/bin/bash # Back files and dirs for full and increment. # backup.sh [full|inc] file1 file2 dir1 dir2hostname-[full|inc]-date.tgz #==============================...

  • [shell编程] cat EOF 使用一例 日期:2014-09-10 22:38:11 点击:201 好评:0

    cat EOF 使用一例,用下面方法很简单的按格式写入文本: 复制代码 代码如下: #!/bin/sh cat EOF /etc/hosts Please Write your message want to attach here. # This is just a test. 127.0.0.1 localhost EOF #----------- echo test /etc/hosts sed......

  • [shell编程] AWK 简介与例子 日期:2014-09-10 22:37:49 点击:135 好评:0

    本文分为两部分: 1) 基本观点和概念; 2) AWK 文本解析的例子。 一、基本观点和概念 1 AWK 是一种用于处理文本的编程语言工具。 2 AWK 命令格式:AWK {pattern+action} 或者是AWK pattern {action} 3 action 参数总是被大括号包围,它由一系列awk语句组成,...

  • [shell编程] shell比较两个字符串是否相等的方法及shell比较运算符 日期:2014-09-10 22:37:17 点击:184 好评:0

    shell比较两个字符串是否相等的方法及shell比较运算符。 比较两个字符串是否相等的办法: if [ $testx = testx ]; then 关键有几点: 1 使用单个等号 2 注意到等号两边各有一个空格:这是unix shell的要求 3 注意到$testx最后的x,这是特意安排的,因为当$te...

  • [shell编程] 用shell+sendmail写的服务器监控报警小脚本 日期:2014-09-10 22:36:45 点击:96 好评:0

    用shell+sendmail写的服务器监控报警小脚本,有需要的朋友可以参考下。 这种email报警脚本遍地都是,很多用的sendmail、postfix,感觉有些大材小用了;也有些用perl的NET::SMTP和Authen::SASL模块发信的,不过我perl用的不好,老发出些莫名其妙的邮件来(比...

  • [shell编程] 使用expect进行日志分析 日期:2014-09-10 22:36:22 点击:123 好评:0

    因为不同服务的管理方法不同,上次关闭了ssh的外网登录以后,各地不断有服务器报出这样那样的问题。 主管要求:全面检查! 在检查中,还真发现不少问题。 最突出的问题是:很多本应该上传到中心服务器的日志居然一直留在本机没动弹!时不时发作出来,就撑爆...

  • [shell编程] 学习awk变量$0的妙用 日期:2014-09-10 22:36:02 点击:88 好评:0

    对awk很是入迷,打算把exp.log的处理那段都用awk写出来。发现awk有个内置参数NR,而且awk内部也可以进行运算。 脚本内容: 复制代码 代码如下: #!/bin/bash for ip in `cat ip.lst` do ./ssh.exp $ip /dev/null 21 done NK=`awk BEGIN{bs=4000000}/access/{i...

  • [shell编程] awk变量应用之使用RS和RT 日期:2014-09-10 22:35:36 点击:85 好评:0

    awk变量应用之使用RS和RT,有需要的朋友可以参考学习下。 如果标准化一点,在BEGIN{}里可以区分成输入输出的FS和OFS、NR(当前行数)、NF(当前域数)和$0(当前行全部内容),如果仅是作一般的处理,这些也够用了。 本文为大家介绍另外两个好东东,RS和RT。...

  • [shell编程] awk变量应用实例 日期:2014-09-10 22:35:08 点击:173 好评:0

    awk变量应用实例(NR与FNR的应用) 在写squid的自动配置脚本时,使用到了sed的/r把一个文件的内容插入另一个文件。 今天看到awk对两个文件的处理方法,要通过不少运算,不怎么方便。 不过作为加深对NR和FNR的不同的理解,还是有些作用。 先说下NR和FNR的不同...

  • [shell编程] awk中调用shell变量的例子 日期:2014-09-10 22:34:38 点击:200 好评:0

    awk中调用shell变量的例子,有需要的朋友可以参考下。 问题: 因为某个原因,需要长期探测对某机器的ping值情况。期望的输出格式是丢包率 响应时间均值。 写个小脚本,最后echo一下,自然好办的很。不过在crontab里看到之前大都有一条任务写的是ping 1.2.3.4...

  • [shell编程] 学习awk的内置函数 日期:2014-09-10 22:34:10 点击:97 好评:0

    awk的内置函数 内置变量的中文翻译: ARGC命令行参数个数 AGRV 命令行参数排列 ENVIRON 支持队列中系统环境变量的使用 FILENAME 浏览文件名 FNR 浏览文件的记录数 FS 输入域分隔符 NF 浏览记录的域个数 NR 已读的记录数 OFS 输出域分隔符 ORS 输出记录分隔符...

  • [shell编程] shell技巧之使用getopts 日期:2014-09-10 22:33:51 点击:53 好评:0

    我们在写sh的脚本时,常常需要在运行时输入一些数据。 大家可能已经了解过如何使用基本的$*,执行的情况,大概就是$0 $1 $2 $3 那么,那些系统命令里的参数又是如何做出来的呢? 我们如何在自己的脚本中实现$0-$1的效果呢?这就是getopts的作用了。 来看一个...

  • [shell编程] awk中让人头疼的system()函数 日期:2014-09-10 21:57:32 点击:110 好评:0

    awk中让人头疼的system()函数,有需要的朋友参考下。 发现一个特尴尬的事实。我辛辛苦苦去百度资料,想用rewrite实现针对不同域名源站故障后的自动跳转功能,但整个思路里遗漏了一个严重的问题。 按我的思路,针对请求的url进行一次curl,然后根据http_code...

  • [shell编程] shell 获取用户输入指定范围的单个字符的两种方法 日期:2014-09-10 21:57:01 点击:156 好评:0

    需求:要求获取用户输一个字符a-zA-Z: 方法一: 复制代码 代码如下: echo `echo {a..z}``echo {A..Z}` /tmp/letterfile while read -p please input a letter: letter do ((`awk-v var=$letter BEGIN{print length(var)}` == 1)) grep -q $letter /tmp/tmpf...

  • [shell编程] 找出某一目录下只有一行内容的文件的shell脚本 日期:2014-09-10 21:56:29 点击:157 好评:0

    需求:找出某一目录下只有一行内容的文件。 演示例子,如下所示: 复制代码 代码如下: [root@station1 ~]# mkdir findtest [root@station1 ~]# cd findtest [root@station1 findtest]# mkdir abc [root@station1 findtest]# echo nihao 123.txt [root@statio...

  • [shell编程] 批量修改ssh配置的expect脚本 日期:2014-09-10 21:55:38 点击:116 好评:0

    描述: 公司服务器一般通过ssh进行远程管理。以前大家登录时,都是随意选内外网IP进入。现在要求必须禁了外网ssh。 第一思路,用iptables把外网ssh的包DROP掉; 第二思路,用tcpwrapper把sshd的allow写死; 第三思路,修改sshd_config,只监听内网请求。 原...

  • [shell编程] 计算两个日期相差多少天数的shell脚本 日期:2014-09-10 21:54:43 点击:197 好评:0

    计算两个日期相差多少天数的shell脚本 复制代码 代码如下: #!/bin/bash #the days between your input and today! #2012-10-07 year(){ while read -p please input the year(must be YYYY ): YEAR do if ((YEAR=1990)) ((YEAR=9999));then echo $YEAR break...

  • [shell编程] 一个备份ftp服务器上的重要文件的shell脚本 日期:2014-09-10 21:53:42 点击:168 好评:0

    需求:待备份的文件已列在一个文件中,要求备份的文件的路径和ftp服务器上的文件路径一致。 代码如下: #!/bin/bash cd /tmp while read FILE do DIR=`dirname $FILE` FNAME=`basename $FILE` mkdir $DIR /usr/bin/ftp -niv ! open 192.168.1.251 user tom 123...

  • [shell编程] awk实现head、tail与tac命令的实例解析 日期:2014-09-10 21:52:24 点击:55 好评:0

    我们知道,命令head、tail、uniq和tac都是逐行操作的。 但请也记住,不管何时,只要需要进行逐行处理时,均可以用awk来解决。 接下来,我们看看如何使用awk来模拟这些命令。 来看一下如何用不同的awk命令来模拟诸如head、tail、tac等命令。 模拟head命令读取...

  • [shell编程] shell中进行文本切片与参数操作 日期:2014-09-10 21:51:50 点击:129 好评:0

    本文介绍的内容,考查了一些简单的文本替换技术及bash中可用的参数扩展简写法。 这些简单的技巧通常能够让我们免于敲入多行代码之苦。 注意看以下的实例,强烈建议你在学习时,自己动手实践一下。 替换变量内容中的部分文本: 复制代码 代码如下: $ var=This...

  • [shell编程] 使用sed和awk分别处理文本的双行模式 日期:2014-09-10 21:50:52 点击:185 好评:0

    使用sed和awk分别处理文本的双行模式。 文本内容: 140203196407011616 140203000108058 140203198809161616 140203000108058 要求结果如下: 140203196407011616,140203000108058 140203198809161616,140203000108058 首先,看下sed代码,sed中的N操作可以...

  • [shell编程] 使用shell快速查看局域网中主机的IP地址的代码 日期:2014-09-10 21:45:16 点击:56 好评:0

    使用shell快速查看局域网中主机的IP地址的代码,注意,此脚本只是快速查看所在局域网中其它主机的IP地址,如果对方设置了禁ping,则无法显示出此主机的IP地址哦。 [root@station1 ]# cat ping.sh 复制代码 代码如下: #!/bin/bash for i in `seq 1 254` do {...

  • [shell编程] 有关awk正则表达式中{}的使用方法 日期:2014-09-10 21:44:48 点击:145 好评:0

    awk正则表达式{}该怎么使用,总是不生效,其实看看man文档就明白了,加上--posix参数即可。 man文档中的解释如下: r{n,m} One or two numbers inside braces denote an interval expres- sion. If there is one number in the braces, the preceding regula...

  • [shell编程] awk输出系统中账户及其组名的单行代码 日期:2014-09-10 21:44:24 点击:157 好评:0

    如果你以为使用awk或者cut输出第一个和第四字段便可以的话,那你就错了,passwd文件中只有gid没有组名,那样的话还需要group文件,做gid到组名的映射。 问题:求出passwd中uid500的用户名和组名? 代码: awk-F: NR==FNR{group[$3]=$1}NR!=FNR{if($4500)prin...

  • [shell编程] shell判断文件是否存在(模板)的一段代码 日期:2014-09-10 21:43:47 点击:194 好评:0

    使用shell进行判断一个文件是否存在,如果不存在则创建它。 复制代码 代码如下: #!/bin/bash proclock(){ if [ -e $1 ];then echo this file is exist.. else echo this file is not exist,but while be touch.. touch $1 fi } read -p please input the fil...

  • [shell编程] 有关linux子shell变量的相关知识 日期:2014-09-10 21:43:15 点击:112 好评:0

    linux的子shell到底是怎么定义的呢? 子shell莫非就是shell打开一个新shell去执行程序,不过有时会让人很困苦的。 复制代码 代码如下: [root@jbxue ~]# a=123 [root@jbxue ~]# (echo $a) 123 [root@jbxue ~]# echo echo $a 1.sh [root@jbxue ~]# cat 1.sh ech...

  • [shell编程] 对调shell的标准输出与标准错误输出 日期:2014-09-10 21:42:52 点击:84 好评:0

    将标准输出与标准错误输出的文件描述符路径调换的例子,有需要的朋友不妨参考下。 复制代码 代码如下: [root@station ~]# adfasdf | cat -bash: adfasdf: command not found [root@station ~]# adfasdf | cat 123.txt -bash: adfasdf: command not found [ro...

  • [shell编程] 有关shell的bash的启动文件 日期:2014-09-10 21:41:44 点击:118 好评:0

    有关shell的bash的启动文件相关知识。 bash的启动文件 启动文件就是当bash启动的时候执行的一些脚本文件,下面介绍下不同方式启动shell,会执行的启动文件。 bash有两种工作模式:交互模式和非交互模式(即shell scripts模式)。 登陆shell 一个登陆shell就是系统...

栏目列表
推荐内容