Shell脚本学习指南之查找与替换介绍
3.1 查找文本grep:使用POSIX定义的基本正则表达式(BRE)。egrep:使用扩展正则表达式(ERE)。fgrep:快速grep。使用优化的算法,匹配固定字符串而非正则表达式。1992 POSIX标准将这三个...
3.1 查找文本grep:使用POSIX定义的基本正则表达式(BRE)。egrep:使用扩展正则表达式(ERE)。fgrep:快速grep。使用优化的算法,匹配固定字符串而非正则表达式。1992 POSIX标准将这三个...
示例:A为本地主机(即用于控制其他主机的机器) ;B为远程主机(即被控制的机器Server), 假如ip为192.168.60.110;A和B的系统都是Linux在A上运行命令:# ssh-keygen -t rsa (连续...
复制代码 代码如下:#/bin/bash# history#把以下代码直接粘贴到/etc/profile后USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`HISTDIR=/var/log/...
在 linux 中,/proc/$PID/status 文件提供了该进程资源(内存,堆栈,信号量,子父进程)的使用情况,虽然linux提供了不少查看内存的命令,但都是看整体的使用情况,无法对单个进程的内存使...
在类unix系统中,符号链接是很常见的,我们会碰到各种与符号链接相关的处理工作。本文为大家介绍一些处理符号链接的实践方法,希望对大家编写shell脚本时带来一些帮助,有需要的朋...
sed查看某时间段到现在的系统日志:
sed -n '/May 20 17/,$p' /var/log/messages | less...
awk -F "" '{for(i=1;i<=NF;++i) if($i=="a") ++sum}END{print sum}' test.c[root@xiaobb 5906]# awk '{for(i=1;i<=NF;++i) if($i=="test") ++sum}END{print sum}' test.c6...
1、查看主机网卡流量复制代码 代码如下:#!/bin/bash#network#Mike.Xuwhile : ; do time='date +%m"-"%d" "%k":"%M' day='date +%m"-"%d' rx_before='ifconf...
4.1 排序文本4.1.1 行的排序未提供命令行选项时,整个记录会根据当前locale所定义的次序排序。在传统的C locale中,也就是ASCII顺序。4.1.2 以字段排序-k选项的后面接着的是一...
实现:ssh远程登录,每次都要指定一堆用户名和密码,现要求实现自动登录。登录流程:本地A 先登录到 B 再由B 登录到最终的C如下:复制代码 代码如下:#!/usr/bin/expect -fset timeout...
一个简单的转换输出的shell脚本,从健盘输入 a,b,c 这种格式 输出如下格式:a
c复制代码 代码如下:#!/bin/bashread -p '请输入:'echo $REPLY >.tmp5count=`grep -o ',' .tmp5...
有如下的文本内容: ********* 123123 123123 ********* 321321 321321 ********* 456456 456456 ********* 123123 123123 ********
匹配123,取出******区间的内容: awk -vRS...
#查找当前目录中是否存在指定目录,若不存在,则创建之复制代码 代码如下:function mkdir_1{ if test ! -d $1 then mkdir $1 fi}#指定文件中的"prefix = .*"串替换为"...
方法一:复制代码 代码如下:echo `echo {a..z}``echo {A..Z}` > /tmp/letterfilewhile read -p "please input a letter: " letterdo ((`awk -v var="$letter" 'BEGIN{prin...
Shell脚本:1、#! 指定脚本执行的shell2、# 注释 3、命令或语法结构echo "输入内容"echo 输出空行
执行:1、shell 脚本 sh example2、给shell脚本执行权限 chmod u+x exa...
第一思路,用iptables把外网ssh的包DROP掉;第二思路,用tcpwrapper把sshd的allow写死;第三思路,修改sshd_config,只监听内网请求。由于一些说不清楚的原因,iptables的办法没法用;而tcp...
提取oralce当天的alert log的shell脚本复制代码 代码如下:#/bin/sh#get alert of everyday#then name of file is everyday_alert.shdir="/oracle/admin/bbdz/bdump"num=$(c...
复制代码 代码如下:#!/bin/sh# 获取所在季度的第一天,到昨天的日期间隔# link:www.jb51.net# date:2013/2/28day=`date -d "1 days ago " "+%Y%m%d"`;year=`expr substr ${day}...
合并一个文件夹下多个文件内容:
复制代码 代码如下:find -name "*.log" -exec 'cat' {} \; > test.tmp...
读取一个文件,把每一行赋值给一个数组的变量,然后用for循环打印出来复制代码 代码如下:#!/bin/shi=1SUM=`sed -n '$=' tmp.txt` #计算文件的总行数echo "$SUM"while read line...
&&命令1 && 命令2:如果这个命令执行成功&&那么执行这个命令。[jb]/usr/xxxx/ytcclb>ls -l test.sql-rwxr--r-- 1 xxxx group 225 Nov 15 14:12 test.sql[jb]/usr/xxxx/ytcclb...
在使用 Gearman 做分布式处理时,各机需要注册一个独立的 job 作为信息反馈,为求方便,Gearman::Worker 脚本 register_function 代码又要通用,于是想到了使用各自的 ip 地址作为...
第一步:在你的linux服务器中定义备份目录:复制代码 代码如下: mkdir /var/lib/mysqlbackup cd /var/lib/mysqlbackup第二步:下面是最重要的一步了,就是写定时备份脚本。复制代码...
发现一个特尴尬的事实。我辛辛苦苦去百度资料,想用rewrite实现针对不同域名源站故障后的自动跳转功能,但整个思路里遗漏了一个严重的问题。按我的思路,针对请求的url进行一次cu...
一、写备份并清除老日志Shell脚本:复制代码 代码如下:#!/bin/sh#backup eoslog#author rhao#date 2008-12-27#定义环境变量EOS_HOME=/home/eosSAS_HOME=/home/eos/SAS# 测试...
取得字符串的长度复制代码 代码如下:代码:%x="abcd"#方法一%expr length $x4# 方法二%echo ${#x}4# 方法三%expr "$x" : ".*"4# expr 的帮助# STRING : REGEXP anchored p...
复制代码 代码如下:#!/bin/bash#website test scriptswhile true;do for cycle_temp in `cat url_list` do if lynx -dump `echo ${cycle_te...
复制代码 代码如下:#!bin/sh # 在指定位置查找指定后缀的文件,包括子目录 # 用法: # findf $1 $2 # 第一个参数为后缀 # 查找指定后缀的文件并打印出来 # link:www.jb5...
本文为大家介绍linxu shell中数组的相关知识,并举了很多例子供参考,包括数组的复制,计算,删除,替换等,是学习shell 数组的不可多得的好文章。数组的声明:1)array[key]=value # arr...
1、原始暴力的方法复制代码 代码如下:myLinux:/home/zhanhailiang/public_html # killall nginx2、温柔点的方法查找指定进程的pid,并kill|kill -USR1 掉复制代码 代码如下:m...
比如比较字符串、判断文件是否存在及是否可读等,通常用"[]"来表示条件测试。
注意:这里的空格很重要。要确保方括号的空格。笔者就曾因为空格缺少或位置不对,而浪费好多宝贵的...
标准输入/输出和重定向,Linux发行版Fedora Core Linux,而Red Hat公司原来Red Hat Linux的开发团队也将继续参与这一发行版本的开发工作。 标准输入与输出 我们知道,执行一个she...
先来看下原始文件的内容:复制代码 代码如下:root@localhost ~]# cat file.txthello worlda:b:c -h -na:b:c -h -nsed根据条件删除相关的行:复制代码 代码如下:[root@localhost...
这种email报警脚本遍地都是,很多用的sendmail、postfix,感觉有些大材小用了;也有些用perl的NET::SMTP和Authen::SASL模块发信的,不过我perl用的不好,老发出些莫名其妙的邮件来(比...
The awk function split(s,a,sep) splits a string s into an awk array a using the delimiter sep.set time = 12:34:56set hr = `echo $time | awk '{split($0,a,":" );...
备份网站内容 复制代码 代码如下:#!/bin/bash#指定运行的脚本shell#运行脚本要给用户执行权限bakdir=/backupmonth=`date +%m`day=`date +%d`year=`date +%Y`hour=`date +%k...
代码一ubuntu与centos复制代码 代码如下:ubuntu:#!/bin/bashecho "ipaddr:"read lineecho $linesed "s/address.*$/address=${line}/g" /etc/network/interfacescentos(未测...
复制代码 代码如下:SRCDIR=/letv/data/www/htdocs_user/MOD=userIP_LIST=(192.126.32.92 192.126.32.93 192.181.155.160 192.181.155.214 192.181.155.215 192.126.32.171)...
使用shell脚本计算Linux网卡流量,方法中最关键点:
复制代码 代码如下:
ifconfig $eth_name | grep bytes | awk '{print $6}' | awk -F : '{print $2}'
通过ifconfig e...
说明:shell中数组的下标默认是从0开始的1、将字符串放在数组中,获取其长度复制代码 代码如下:#!/bin/bashstr="a b --n d"array=($str)length=${#array[@]}echo $lengthfor ((...
shell脚本读取数据有以下几种方式:1.键盘输入,默认2.从文件中读取3.通过管道命令传递echo的功能:\c :不换行\f :进纸\t :跳格\n :换行\表示转义,例如:"\"/dev/rmt0"\"翻译为,"/dev...
1. ftp自动登录批量下载文件。复制代码 代码如下:#####从ftp服务器上的/home/data 到 本地的/home/databackup#####!/bin/bashftp -n<<!open 192.168.1.171user guest 12345...
安装了centos6.0,由于选择了最小安装,很多包没有安装,因此一些常用的命令也不支持,如下:# scp -bash: scp: command not found我的解决方法是:在一台运行正常的CentOS 5.6服务器上...
日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员。目前很多单位在招聘linux系统管理员时,shell脚本的编写是必考的项目...
备份数据库的shell脚本一复制代码 代码如下:#!/bin/bash#指定运行的脚本shell#运行脚本要给用户执行权限bakdir=/backupmonth=`date +%m`day=`date +%d`year=`date +%Y`hour...
[root@localhost /root]# netstat -tunlp |awk '/137/;/138/{print}' udp 0 0 192.168.1.200:137 0.0.0.0:* 539/nmbd udp 0 0 0.0.0.0:137 0.0.0.0:* 539/nmbd udp 0 0 192...
复制代码 代码如下:#!/usr/bin/expect -fset ipaddress [lindex $argv 0]set passwd [lindex $argv 1]set timeout 30spawn ssh root@$ipaddress#expect "yes/no"#send "yes...
因为后台录入的同事,上传文件的时候,给文件取了相同的名字,但不同的后缀名,由于文件路径非常深,大概十层左右,每一层又有几十个文件,所以人工找起来非常麻烦,所以写了个脚本,帮他们实...
bash shell只支持一维数组,但参数个数没有限制。
声明一个数组:declare -a array(其实不用声明,按数组方式直接赋值给变量即可,BASH就知道那是数组)
数组赋值:(1) array=(var1...
实现代码一、#!/bin/sh# 判断文件是否存在# link:www.jb51.net# date:2013/2/28myPath="/var/log/httpd/"myFile="/var /log/httpd/access.log"# 这里的-x 参数判断$myPath是...