记录几条命令:(打包当前目录下的所有文件) ls |awk{ print tar zcvf $0.tar.gz $0|/bin/bash } (取范围) [root@VM-202 zhuo]# echo abc#1233+232@jjjj?=== |awk-F [#@] {print $2} 1233+232 [root@VM-202 zhuo]# echo abc#1233+232@jjjj?=== |awk -F [@...
tr、sed的基本用法,供大家学习参考。 匹配空行: sed /^ *$/d tmp.txt tr -s [\r] [\n] sed /max/!d test.txt 删除不含max的行 sed /report/s/5/8 test.txt 将把所有包含report的行里出现的第一个5改成8 sed s/....// test.txt 删除每行的前4个字符 sed s/....
学习shell的循环,感觉好麻烦的说。 找了几个不同的方法来实现输出1-100间可以被3整除的数。 1.用(()) 代码如下: #!/bin/bash clear for((i=1;i100;i++)) do if((i%3==0)) then echo $i continue fi done 2.使用`seq 100` 复制代码 代码如下: #!/bin/bash c...
shell中的random变量。 1、利用RANDOM取随机数 shell有一个环境变量RANDOM,范围是0--32767 如果我们想要产生0-25范围内的数:$(($RANDOM%26)) 在$(()) 是可以省略取值的$符号的。(All tokens in the expression undergo parameter expansion, string expans...
分享一个iptables的小脚本,供大家学习参考。 复制代码 代码如下: #!/bin/bash netstat-an|grep SYN_RECV|awk{print$5}|awk-F: {print$1}|sort|uniq -c|sort -rn|awk {if ($1 1) print $2} for i in $(cat /tmp/dropip) do /sbin/iptables-A INPUT -s $i -j...
Shell中通常将EOF与 结合使用,表示后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。 可以把EOF替换成其他东西,意思是把内容当作标准输入传给程序。 回顾一下 的用法。当shell看到 的时候,它就会知道下一个词是一个分界符。在...
shell中的if判断语句,供大家参考。 [ 前后空格 ] 前面空格 [ -a FILE ] 如果 FILE 存在则为真。 [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真。 [ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真。 [ -d FILE ] 如果 FILE 存在且是一个目录则为...
$IFS默认为空白(空格, 制表符,和换行符),但这是可以修改的,比如,在分析逗号分隔的数据文件时,就可以设置为逗号。 例如111 222 333 444,这个字符串其实就是111222333444,由于IFS里也有个,所以在它眼中就是分隔符,所以111 222 333 444在它看来就是这个...
分享一个for循环+case的脚本(监控程序状态并执行相关操作) ,供大家学习参考。 复制代码 代码如下: #/bin/bash set -x HOSTS=nginxmysqlphp-cgi for myhost in $HOSTS do count=(`ps aux |grep $myhost |grep -v grep |wc -l`) echo $myhost echo $count if...
假设,我们这里有个文件aaa.txt,其内容中有一些包括有效ip地址的行,需要我们用一条命令找出这些行,此时不妨用egrep试试哦。 先来看下aaa.txt文件的内容: 复制代码 代码如下: [root@localhost]# cat aaa.txt 192.168.1.1 1234.234.04.08 123.1234.045.678...