写出几条常用的linux命令,linux几条常用命令

一. 写一个sed命令,修改/tmp/input.txt文件的内容,要求:(1) 删除所有空行;(2) 一行中,如果包含"11111",则在"11111"前面插入"AAA",在"11111"后面插入"BBB",比如:将内容为0000111112222的一行改为:0000AAA11111BBB2222

(1)sed  '/^$/d' /tmp/input.txt

(2)sed  's/\(11111\)/AAA\1BBB/g' /tmp/input.txt

二. sed对文件进行多重编辑命令

(1) sed + 选项e

格式为:sed -e 'sed命令' -e 'sed命令' filename

sed -e 's/seugrid1/SEUGRID1/' -e 's/Certificate/CERTIFICATE/' input

(2).sed + {}

格式为:sed 'sed命令/{};' filename

sed '/certificate/{s/certificate/INSTALL/;s/your/YOUR/;s/user/OTHER/;}' input

(3).利用分号分隔多个编辑命令。

格式为:sed '编辑命令1;编辑命令2;……' 输入文件

sed 's/seugrid1/SEUGRID1/ ; s/certificate/CERTIFICATE/' input

0818b9ca8b590ca3270a3433284dd417.png

三. 找到/tmp/目录下面的所有名称以"_s1.jpg"结尾的普通文件,如果其修改日期在一天内,则将其打包到/tmp/back.tar.gz文件中

有三种方法:

(1)find /tmp -name '*_s1.jpg' -mtime -1 | xargs tar -zcvf /tmp/back.tar.gz

(2)tar -zcvf /tmp/back.tar.gz $(find /tmp -name '*_s1.jpg' -mtime -1)

(3)find /tmp -name '*_s1.jpg' -mtime -1 | tar -zcvf /tmp/back.tar.gz -T -

四. find查找两种后缀名的3种方法

(1) find  .  -name "*.txt" -o -name "*.log"

(2) find .  -regex  ".*\.Java\|.*\.xml"

上面这条命令会查找当前文件夹下面的所有java文件和xml文件,find默认采用emacs正则,会比较罗嗦,如果采用posix-extended正则会比较简单,如下:

(3) find .  -regextype posix-extended -regex ".*\.(java|xml)"

五. 用netstat命令配合其他shell命令,按照来源IP统计下所有到80端口的ESTABLISHED状态链接的个数,输出结果类似(第一列为连接数,第二列为IP):

netstat -an | grep ESTABLISHED | grep ":8080" | awk 'BEGIN{FS="[[:space:]:]+"}{print $8}'| sort| uniq -c | sort -nr| head -n 10

六. 写一个shell命令,统计apache日志文件(access_log)中某一天中每个URL的访问次数,并按照次数由小到大的顺序排序输出:

cat access_log|awk '{print $7}'| sort | uniq -c | sort -n | head -10

七. 查看服务器tcp连接状态并汇总

netstat -an | awk '/tcp/{++a[$NF]}END{for(b in a )print b,a[b]}'

八. 统计apace或者nginx日志文件访问次数最多的100IP及次数

awk '{print $1}' access_log| sort | uniq -c | sort -n -k 1 -r | head -n 100

九. 每周一下午三点将/tmp/logs目录下面的后缀为*.log的所有文件rsync同步到备份服务器192.168.1.100中同样的目录下面,crontab配置项该如何写:

* 15 * * 1 rsync �vazutopg --include="*.log" --exclude=* /tmp/logs rsync@192.168.1.100:/tmp/logs --password-file=/etc/rsyncd/password.secret >>/var/logs/rsync.log 2>&1

十. 请写出用tcpdump抓取符合如下条件包的命令:(1) 目标端口是 80;(2) 来源IP或者是1.1.1.1,或者是 2.2.2.2;(3) UDP包;

(1) tcpdump tcp -i eth0 dst port 80

(2) tcpdump src 1.1.1.1 or 2.2.2.2

(3) tcpdump udp

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值