shell中IFS用法
一 IFS的介绍 Shell 脚本中有个变量叫IFS(Internal FieldSeprator) ,内部域分隔符。完整定义是Theshell uses the value stored in IFS, which is the space, tab, and newline characters bydefault, to delimit words for the read and set commands, whenparsing output from command substitutio...
awk引用shell变量
shell中的变量在awk程序中无法直接使用,因为在执行AWK时,是一个新的进程去处理的,这时就需要-v 参数来向awk程序中传参数。#!/usr/bin/bashfor code in `cat /tmp/article_summary.txt|awk -F "\t" '{print$1}'`;do row=`cat /tmp/article_summary.txt|grep -w "${code}"` awk -F "\t" -v code="${code...
vim中替换和删除
1 替换 用空格替换以“#”开头的行:%s/^#.*//g2 删除空行 刪除没有内容的空行 :g/^$/d 刪除包含有空格组成的空行 :g/^\s*$/d 除以空格或tab开头到结尾的空行 :g/^[ |\t]*$/d 3 删除以“#”开头的行:g/^#.*/d...
awk打印第N列后面的所有列
awk '{for(i=N+1;i
sed,grep用法小结
1 打印关键字所在行及其后n行sed -n '/XX/,+np' filegrep "xx" -An yourfile2 获取关键字所在行和其上n行grep "xx" -Bn yourfile3 获取关键字所在行的行号sed -n '/pattern/=' file4 打印并标出行号grep -n file5 多关键字搜索grep -E "xxx|yyy" file6 |表示或关系,比如 'gd|good|dog' 表示有g...
awk多分隔符操作
awk中-F"[:/]"表示:和/都是字段分隔符[root@localhost edm]# tail -n 2 /etc/passwdmysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bashtomcat:x:502:502::/home/tomcat:/sbin/nologin[root@localhost edm]# tail -n 2 /etc/passwd|awk -F "[:/]" '{print$7}'varhomeifconfig eth0|grep "inet addr"|awk -F "[ ...
shell获取字符串长度
方法一[root@192 ~]# str=123[root@192 ~]# echo ${#str}3方法二[root@192 ~]# str=123[root@192 ~]# echo $str|wc -L3
截取ip
方法一[root@192 andy]# ifconfig eth0|grep -w inet|cut -d " " -f 12|cut -d":" -f 2192.168.151.141方法二[root@192 andy]# ifconfig eth0|grep -w inet|cut -c 21-35192.168.151.141方法三[root@192 andy]# ifconfig eth0|grep -w "inet" |cut -d " " -f 12|sed's/^.*://g'192.168.151.141方法四[root@192 ...
shell禁止非法IP ssh登录
最近发现/var/log/secure里有大量陌生IP尝试ssh登录到服务器,于是写了下面的小脚本把非法IP列入“黑名单”。#!/bin/bash#Author: Andy#deny illegal ip login#尝试5次失败就列入黑名单,写入/etc/hosts.denycat /var/log/secure|grep -v 192.168|\ awk '/Failed/ {pri...
linux网络流量实时监控脚本
#!/bin/bashif [ -n "$1" ]; then eth_name=$1else eth_name="eth0"fii=0send_o=`ifconfig $eth_name | grep bytes | awk '{print $6}' | awk -F: '{print $2}'`recv_o=`ifconfig $eth_name | grep bytes | awk '{print ...
nagios安装配置
一 使用目的 作为系统运维人员,对系统的监控是不可或缺的一项重要任务,当系统出现故障时能在第一时间得到通知并解决故障是每个运维人员职责。时下监控软件有很多比如:zabbix,cacti,nagios等,本文主要介绍nagios的一些基本功能。二Nagios工作原理 Nagios的功能是监控服务和...
expect批量修改密码
在工作过程中经常需要批量对多台机器进行操作,如果每台都手动操作那效率实在是太低了。这时就需要一种自动交互的方式对若干台机器进行批量处理,expect就扮演着这样一种角色。本文以批量修改密码为例浅谈expect的用法。Expect需要Tcl编程语言的支持,首先需要确定机器安装有expect,tcl。[root@rac1 scripts]# rpm -qa|grep ...
raw裸设备配置
一 概述二 共享磁盘导出,导入三 裸设备配置一 概述 在OracleRAC中,通常需要用裸设备来存放共享文件,如:OCR,VOTING DISK等。因为使用裸设备避免了经过Unix操作系统这一层,数据直接从Disk到Oracle进行传输,所以使用裸设备对于读写频繁的数据库应用来说,可以极大地提高数据库系统的性能...
共享存储之ISCSI
多年以来,光纤通道存储区域网 (FC SAN) 是构建基于网络的存储解决方案所使用的唯一技术。基于以前的一组 ANSI 协议(称为光纤分布式数据接口 (FDDI)),开发了光纤通道以在存储网络上移动SCSI命令。
linux中vmstat分析
vmstat是一款功能十分强大的linux系统监控工具,可以通过该软件来监控进程,内存,CPU,IO。下面通过实例来对vmstat的统计结果进行分析。[root@192 ~]# vmstat 1 5procs -----------memory---------- ---swap-- -----io---- --system-------cpu------ r b swpd free ...
linux中的线程信息
在linux系统中可以用ps -eLf命令来查看线程的信息,例如ps -eLf|grep java|grep -vgrep,可以查看和java运行有关的线程。ps -efL|grep java|grep -v grepUID PID PPID LWP C NLWP STIMETTY &nbs...
apr在tomcat中的应用
1 引言在tomcat启动日志中有时会抛出下面的错误The Apache Tomcat Native library which allows optimal performancein production environments was notfound。这是因为没有安装apr或者是tomcat没有应用apr。本文将介绍apr及其在tomcat中的作用。2 apr简介APR(Apache Portable Runtime)是一个高可移植库,它是Apache...
linux一些命令
1 paste该命令主要用来将多个文件的内容合并,与cut命令完成的功能刚好相反。粘贴两个不同来源的数据时,首先需将其分类,并确保两个文件行数相同。paste将按行将不同文件行信息放在一行。缺省情况下,paste连接时,用空格或tab键分隔新行中不同文本,除非指定-d选项,它将成为域分隔符paste格式为:paste -d -s -file1 ...
rsync同步配置
rsync是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。一 安装rpm -ivh rsync-3.0.6-4.el5rsync主要有三个配置文件rsyncd.conf(主配置文件)rsyncd.secrets(密码文件)rsyncd.motd(rysnc服务器信息)创建目录mkdir /etc/rsyncdcd /etc/rsyncd创建文件touch ...
nginx expires if_modified
nginx用expires对页面进行缓存时要配合if_modified,在nginx的一些模块中对httpheader进行了过滤使得expires无法生效。比如ssi和sub模块,在编译的时候要将这两个模块中的对应过滤http头功能注释。vim ngx_http_ssi_filter_module.c......if (r == r->main) { ngx_http_...