
Perl/Shell
文章平均质量分 66
MiltonZhong
my name is MiltonZhong
展开
-
FTP上传脚本与主机自建传输脚本(AIX)
#!/bin/shDAY=`date "+%Y-%m-%d %H:%M:%S"`ip=10.244.152.51port="22"passwd=ucp@1234local_dir=/app/chargefile/chargeRate/remote_dir=/app2/chargefile/chargeRate_from_racto_51() { expect原创 2017-02-23 18:18:54 · 1604 阅读 · 0 评论 -
scp 使用
本机IP:192.168.138.150要传送的IP地址为:192.168.138.151任务:拷贝/etc/ha.d/ldirectord.cf文件到151机器上,地址为:/etc/ha.d在本机上操作,使用命令scp:以下操作是从本地拷贝到服务器上scp /etc/ha.d/ldirectord.cf root@192.168.138.151:/etc/ha.d 复原创 2014-01-08 20:50:46 · 1221 阅读 · 0 评论 -
服务器维护脚本整合(含监控NMP小脚本)
服务器维护脚本1.用于杀死mysql里出现的僵死进程#!/bin/bashwhile :do n=`/usr/local/mysql/bin/mysqladmin -uroot -p123456quanlian processlist | grep -i sleep | wc -l` date=`date +%Y%m%d\[%H:%M:%S]` echo原创 2013-07-03 10:35:06 · 1477 阅读 · 0 评论 -
linux下文件对比工具详解(diff、diff3、sdiff、vimdiff和comm)
工具概述:cmp 比较两个文件,并指出它们是否不同及不同的字节。 diff 比较两个文件或目录,并指出哪些文件的哪些行不同。 diff3 逐行比较三个文件。 sdiff 合并两个文件,并以交互方式输出结果。 vimdiff 使用vim同时编辑一个文档的2或3个版本并显示他们的区别使用。 comm 一行一行对两个已经排序的文件进行比较,在第三列中显示同一行是否相同原创 2013-07-31 17:39:32 · 23076 阅读 · 0 评论 -
Linux watch命令 实时监测命令的运行结果(转)
这是一个非常实用的命令。可以动态的检测命令的执行结果 例如 watch 是一个非常实用的命令,基本所有的 Linux 发行版都带有这个小工具,如同名字一样,watch 可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行。直接在 watch 后面接你想运行的命令,watch 就会帮你重复运行,并把每次的结果都更新在屏幕上。默认 watch 会以 2s 的间隔原创 2013-11-14 10:09:06 · 1313 阅读 · 0 评论 -
Shell 参数置换变量
1、name=${name2:-word}当name2这个变量已经设置过了(就是说name2这个变量设置过值),则把它的值赋值给name。如果name2这个变量没有设置过值,则把word当作name的值。2、name=${name2:=word}当name2这个变量已经设置过了,就把name2的值赋值给name这个变量,如果name2没有设置过,则把word赋值给name23、na原创 2013-10-25 10:56:18 · 2139 阅读 · 0 评论 -
“Linux文件的合并、排序和分割” 之 join 命令
joinjoin 是 paste 的一个很好的增强版本。join 只有在所要连接的文件共享某个共同的域时才会工作。举例来说,考虑我们上面介绍 paste 时所使用的两个文件。下面是在使用 join 对其进行合并时所发生的事情: # join fileone filetwo 注意这并没有显示任何东西。join 工具必须要在所操作的文件之间找到共同的域,默转载 2013-08-13 14:17:35 · 1866 阅读 · 0 评论 -
Linux下xargs命令详解
大多数 Linux 命令都会产生输出:文件列表、字符串列表等。但如果要使用其他某个命令并将前一个命令的输出作为参数该怎么办?例如,file 命令显示文件类型(可执行文件、ascii 文本等);你能处理输出,使其仅显示文件名,目前你希望将这些名称传递给 ls -l 命令以查看时间戳记。xargs 命令就是用来完成此项工作的。他允许你对输出执行其他某些命令。记住下面这个来自于第 1 部分中的语法:转载 2013-09-15 12:28:08 · 736 阅读 · 0 评论 -
linux系统维护简单脚本
1.报告当前系统“/boot”目录所占用的空间大小,并列出其中内核文件的属性信息。#!/bin/bash#To show usage of /boot directory and mode of kernel file.echo "Useage of /boot: "du -sh /bootecho "The mode of kernel file: "ls -lh /原创 2013-06-28 11:07:39 · 979 阅读 · 0 评论 -
Shell中的美元符号$
linux脚中经常会遇到美元符号 ($),以下是他们代表的含义:$0 shell的命令本身(包括完整路径) $1到$9 数字表示shell 的第几个参数 $# 传递到脚本的参数个数 $* 以一个单字符串显示所有向脚本传递的参数 $$ 脚本运行的ID号 $! 后台运行的最后一个进程的ID号 $@ 与$*相同。 $- 显示shell使用的当前选项。原创 2013-08-26 15:15:48 · 4024 阅读 · 1 评论 -
shell中的特殊符号总结
基本的shell特殊符号都在这里了在shell中常用的特殊符号罗列如下:#; ;; . , / \ 'string'| ! $ ${} $? $$ $* "string"* ** ? : ^ $#原创 2013-08-28 14:50:52 · 1284 阅读 · 0 评论 -
sed命令详解(终于花了点时间看完)
1.简介sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显原创 2013-06-27 16:20:47 · 864 阅读 · 0 评论 -
批量添加虚拟IP
awk '{while ((++i) "ifcfg-eth0:"i}' <<< 1原创 2015-04-27 00:48:34 · 1101 阅读 · 0 评论 -
环境变量快速设置
14.3.1 设置环境变量V A R I A B L E - N A M E = v a l u e;export VARIABLE-NAME在两个命令之间是一个分号,也可以这样写:V A R I A B L E - N A M E = v a l u eExport VARIABLE-NAME显示变量:使用set或者env来设置14.3.3 清原创 2015-04-24 01:50:16 · 801 阅读 · 0 评论 -
Linux查看History记录加时间戳小技巧
Linux查看History记录加时间戳小技巧 熟悉bash的都一定知道使用history可以输出你曾经输入过的历史命令,例如 [root@servyou_web ~]# history | more 6 ./test.sh 7 vim test.sh 8 ./test.sh 但是这里只显示了命令,并没有显示执行命令的时间,因为保存历史转载 2014-11-17 15:01:39 · 842 阅读 · 0 评论 -
linux如何用curl 来post xml 数据
经过一番查找,终于找到了curl使用post的命令:[java] view plaincopyecho ''|curl -X POST -H 'Content-type:text/xml' -d @- http://10.206.30.32:8081/loginregistration/register 其中就是要post的xml 文件,8081是私有端口。原创 2014-11-13 16:17:08 · 11723 阅读 · 0 评论 -
寻找PHP(网站)挂马,后门
一php后门木马常用的函数大致上可分为四种类型: 1. 执行系统命令: system, passthru, shell_exec, exec, popen, proc_open2. 代码执行与加密: eval, assert, call_user_func,base64_decode, gzinflate, gzuncompress, gzdecode, str_r原创 2013-08-02 15:29:40 · 7127 阅读 · 0 评论 -
LNMP监控脚本(初版)
[root@www ~]# ^CYou have new mail in /var/spool/mail/root[root@www ~]# cat /data/shell/check_PHP_MYSQL_NGINX.sh #!/bin/bashwget http://www.cncar.com/test200.php --spiderc_monitor=$?if [ $原创 2014-06-22 23:46:36 · 1010 阅读 · 0 评论 -
Linux Script (shll简单运算例子)
(1)显示多个##号脚本#!/bin/bash #文件的开头解释语言aa=# #把这两个进行赋值bb=#for i in `seq 1 39` #for循环,从1到39,每次递增1do for b in `seq 1 $i` #接下来嵌套for循环,从1到上面for循环的i值 do echo -en "$aa" #显示3原创 2013-09-11 22:10:50 · 820 阅读 · 0 评论 -
循环与函数等结构化详解
Shell编程--循环结构 控制结构Shell有一结构控制集合,我们再一次说明他们与其他的程序语言非常相像.Ifif语句是相当简单的:他测试一个命令的结果,并且有选择的执行一组语句:if conditionthenstatementselsestatementsfi使用if命令:下面的这个例子中显示if的普通用法,他会询问一个问题并依据这个问题来进行回转载 2013-08-14 15:01:03 · 722 阅读 · 0 评论 -
旋转的斜杠
#!/bin/bash#----中断计数器----#incr=1#----旋转的斜杠----#spin="/-\|"echo -en " Please wait ... "#这里就是实现旋转效果的代码#while truedo printf "\b\b\b\b${spin:incr++%${#spin}:1}原创 2014-05-04 02:12:38 · 870 阅读 · 0 评论 -
if判断详解
1.bash把[[ $a -lt $b ]]看作一个单独的元素,并且返回一个退出码。退出码0为真,非零为假例如:a=1b=c[[ $a -lt $b ]]echo $? #0 a小于b为真[[ $b -lt $a ]] echo $? #1 b小于a为假2. ((…))和let…结果也能够返回一个退出码转载 2013-08-26 14:13:54 · 1306 阅读 · 0 评论 -
命令查看linux硬件、系统信息
proc 文件系统可以被用于收集有用的关于系统和运行中的内核的信息。下面是一些重要 的文件: /proc/cpuinfo - CPU 的信息 (型号, 家族, 缓存大小等) /proc/meminfo - 物理内存、交换空间等的信息 /proc/mounts - 已加载的文件系统的列表 /proc/devices - 可用设备的列表 /proc原创 2013-05-14 16:37:35 · 649 阅读 · 0 评论 -
grep详细用法(与正则的结合)
首先要记住的是: 正则表达式与通配符不一样,它们表示的含义并不相同!正则表达式只是一种表示法,只要工具支持这种表示法, 那么该工具就可以处理正则表达式的字符串。vim、grep、awk 、sed 都支持正则表达式,也正是因为由于它们支持正则,才显得它们强大;在以前上班的公司里,由于公司是基于web的服务型网站(nginx),对正则的需求比 较大,所以也花了点时间研究正则,特与大家分享下:转载 2013-06-28 02:03:57 · 709 阅读 · 0 评论 -
awk 个别运算符详解
1.6 awk关系、布尔运算符、表达式AWK的大部分运算符及其意义与C/C++、Java、Linux等相似,如:> 大于>= 大于等于== 等于!= 不等于|| 逻辑或&& 逻辑与! 逻辑非+ 加- 减* 乘/ 除% 模^或** 乘方++x 在返回x值之前,x变量加1x++ 在返回x值之后,x变量加1 AWK独有的运算原创 2013-07-08 17:07:36 · 1149 阅读 · 0 评论 -
AWK 运算符
awk作为文本处理优秀工具之一,它有独自丰富的运算符。下面我们一起归纳总结一下,所有运算符。 可以分为:算术运算符,赋值运算符,关系运算符,逻辑预算法,正则运算符。 一、运算符介绍运算符描述赋值运算符= += -= *= /= %= ^= **=赋值语句逻辑运算符||逻辑或&&逻辑与原创 2013-07-08 16:31:06 · 1861 阅读 · 0 评论 -
AWK 详细用法讲解 (有举例说明)
awk的用法首先我们创建一个要测试的文件test内容:1 2 3 9test:test1str:d strd第一个 awk让我们继续,开始使用 awk,以了解其工作原理。在命令行中输入以下命令:$ awk '{ print }' test 您将会见到 test 文件的内容出现在眼前。现在,解释 awk 做了些什么。调用 awk 时,我们指定 test 作为输入文转载 2013-06-28 02:09:54 · 1369 阅读 · 0 评论 -
shell:文件的排序、合并和分割
Linux的文本处理命令,包含sort、uniq、join、cut、paste、split、tr、tar,这些命令能实现对文件记录排序、统计、合并、提取、粘贴、分割、过滤、压缩和解压缩等,它们与sed和awk一起构成了Linux文本处理的所有命令和工具。 5.1 sort命令# sort [选项] [输入文件]选项意义-c测试文件是否已经排序转载 2013-07-08 09:54:08 · 1290 阅读 · 0 评论 -
正则表达式 与 通配符的区别
通配符与正则表达式很容易混淆,首先要明白二者是不同的,个人感觉通配符用于Linux的shell命令(如文件名相关操作)中,而正则表达式用于文本内容中的字符串搜索和替换等。通配符是Linux系统本身就支持的,而正则表达式用于vim编辑器或awk程序,这些文本处理工具正是由于支持正则表达式才变得强大。通配符[a-z]或[12]:匹配方括号中指定范围内的单个字符或方括号列出的其中一个字符转载 2013-06-18 15:42:47 · 1004 阅读 · 0 评论 -
扩展正则表达式多出来的几个特殊符号
+ 重复一个或者一个以上的前一个字符,如o+表示一个以上的o? 0个或者1个前一个字符,如o?表示空白或者1个o| 或,如要查找gd或者good这两个字符,egrep -n 'gd|good' grep.man,可以更多个字符串相或() 找 组 字符串,如查找glad或者good, egrep -n 'g(la|oo)d' grep.man()+ 多个原创 2013-06-15 16:33:00 · 882 阅读 · 0 评论 -
POSIX基本正则表达式和扩展正则表达式的比较
19.7 POSIX基本正则表达式和扩展正则表达式的比较在读者正觉得正则表达式已经复杂得不能再复杂时,又会发现POSIX规范将正则表达式的实现方法分为了两种:基本正则表达式(BRE)和扩展正则表达式(ERE)。到目前为止,我们所讨论的正则表达式的所有特性,都得到了兼容POSIX的应用程序的支持,并且都是以BRE的方式实现。grep命令就是这样的一个例子。BRE和ERE到底有什么区别原创 2013-05-28 16:25:44 · 1070 阅读 · 0 评论 -
常用的正则表达式全面总结
PS:正则表达式用于字符串处理、表单验证等场合,实用高效。以下表达式本人收集于网络,做了简单整理,以备不时之需。没有全部验证,可能会存在部分错误,读者请自己调试鉴别更正。匹配中文字符的正则表达式: [u4e00-u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^x00-xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2转载 2013-04-29 00:05:58 · 680 阅读 · 0 评论 -
perl shell php python 的区别
********************************************************************************perl:用作文本处理比较好,可以作为系统的辅助工具shell:大概应该指bash吧,用作系统维护、操作等方面php:网页了,网络应用python:功能强大,模块多、跨平台能力好,完全面向对象,尤其适用做大型脚本程序的开发和快速开发转载 2013-04-28 16:26:55 · 1863 阅读 · 0 评论 -
shell,perl,python之间的区别
shell+sed+awk三者中功能最弱,没有调试程序,大多数操作必须通过运行其他程序才能执行,所以需要更多时间、内存并在进程表中占有位置。内置的算术运算很有限,数组下标必须是数字等。但它对运行环境要求低,小巧便捷,是学习系统脚本编程的基础。Perl设计之初就是为了方便编写复杂高效的系统脚本,它也是应该最为广泛的脚本编程语言。它在编程方面相当于瑞士军刀,对字符、文本文件处理能力很强,以原创 2013-04-28 16:14:38 · 989 阅读 · 0 评论 -
SED 的精细用法
sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作,下面先了解一下sed的用法sed命令行格式为: sed [-nefri] ‘command’ 输入文本 常用选项: -n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会转载 2013-02-01 17:48:06 · 506 阅读 · 0 评论 -
查看网卡流量
#!/bin/bash #netflood #Ajian while : ; do time=`date +%m"-"%d" "%k":"%M` echo time=$time day=`date +%m"-"%d` echo day=$day rx_before=`ifconfig eth0|sed -n "9"p|转载 2013-06-29 17:59:38 · 963 阅读 · 0 评论 -
根据文本关键字寻找文件(看哪些文件包含某某字符串)
这个非常有用,还可以用来找PHP后门挂马平时我们在开发过程中 知道某个函数名称,却不知道这个函数在哪些程序文件中用到,我们可以用linux下的grep命令来找 比如我们想找一个 关键词是“hellow word” 在哪些文件中有,我们用grep命令grep --color -i -r -n "hellow word" /data/www/这样就能搜索出来 文件中包含关键词原创 2013-08-02 14:58:11 · 1207 阅读 · 0 评论 -
shell运算、双括号、双中括号
在bash中计算i=i+1有三种办法:1.i=$(($i+1))2.i=`expr $i + 1`3.let “i=i+1″其中第一种和第二种是可以在sh里面使用的,第三种只能在bash里使用,还是第一种最简单,通用。双括号还有妙用for ((i=1;ishell里面是不允许if [ $a != 1 || $b = 2 ]出现的,要用if [ $a !=原创 2013-08-26 11:26:42 · 2339 阅读 · 0 评论 -
变量和引用(2)
Shell变量详解什么是变量?为什么要使用变量?各种shell环境中都使用到了“变量”的概念,shell变量用来存放系统和用户需要使用的特定参数(值),而且这些参数可以根据用户的设置或系统环境的变化而相应的变化。通过使用变量,shell程序可以提供更加便捷灵活的功能,实用性和灵活性更强。常见的shell变量类型包括自定义变量,环境变量,预定义变量,位置变量。一自定义变量Bash转载 2013-08-13 22:36:50 · 896 阅读 · 0 评论 -
“Linux文件的合并、排序和分割” 之命令整合
主要内容:sort命令、uniq命令、join命令、cut命令、paste命令、split命令、tr命令、tar命令sort 命令:Linux的sort命令就是一种对文件排序的工具,sort命令的功能十分强大,是Shell脚本编程时常用的文件排序工具;sort命令与awk一样,将文件看作记录和域进行处理,默认的域分隔符是空格符,sort命令的格式为:sort [选项] [输入文转载 2013-08-13 21:56:35 · 1163 阅读 · 0 评论