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

三. 找到/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 [email protected]:/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
时间: 2024-10-14 09:26:45

linux几条常用命令的相关文章

查看Linux系统架构类型的5条常用命令

导读 很多时候我们都需要查看当前 Linux 系统是 32 位还是 64 位系统架构类型,本文中我将向大家推荐 5 条常用命令.无论你使用的是桌面版或是只装了文本界面的 Linux 环境,以下命令几乎可以通吃所有 Linux 发行版,例如:RHEL.CentOS.Fedora.Scientific Linux.Debian.Ubuntu.Linux Mint.OpenSUSE 等等. 1. uname 命令 uname -a 命令可以直接显示 Linux 系统架构的命令,安几乎可以工作在所有 L

Linux Jboss下常用命令

cd /opt/jboss/binnohup sh run.sh -b 0.0.0.0 &启动jboss:nohup ./run.sh -b 0.0.0.0 &nohup sh run.sh -b 0.0.0.0 &//nohup表示转入后台运行: 使用./run.sh和sh  run.sh 都能启动:-b 表示绑定IP启动,如果为0.0.0.0则表示所有IP都可访问该服务,此参数可不写,可以再jboss的server.xml配置文件里配置如下:添加 & 表示恢复到命令行模

Linux 操作MySQL常用命令行

Linux 操作MySQL常用命令行 注意:MySQL中每个命令后都要以分号:结尾. 1.显示数据库 mysql> show databases; +----------+ | Database | +----------+ | mysql | | test | +----------+ 2 rows in set (0.04 sec) Mysql刚安装完有两个数据库:mysql和test.mysql库非常重要,它里面有MySQL的系统信息,我们改密码和新增用户,实际上就是用这个库中的相关表进行

Linux文本处理常用命令

1.正则表达式 (1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/.*.?等)组成.  (2)基本元字符集及其含义      ^ :只匹配行首.   如^a 匹配以a开头的行abc,a2e,a12,aaa,......      $ :只匹配行尾.   如^a 匹配以a结尾的行bca,12a,aaa,.......      * :匹配0个或多个此单字符. 如(a)* 匹配 空,a,aa,aaa,....      [] :只匹配[]内字符

linux vi(vim)常用命令汇总(转)

前言 首先解析一个vim vi是unix/linux下极为普遍的一种文本编辑器,大部分机器上都有vi的各种变种,在不同的机器上常用不同的变种软件,其中vim比较好用也用的比较广泛.vim是Vi Improved的缩写,表示更好的vi.本文就说些比较有用.比较常用的命令,若能熟练运用这些命令,那么会发现编辑文件很大帮助,尤其作为开发人员,能够快速的提高开发效率. 说明 以下的例子中 xxx表示在命令模式下输入xxx并回车 以下的例子中 :xxx表示在扩展模式下输入xxx并回车 小括号中的命令表示相

linux开发中常用命令

经常使用linux进行开发,软件安装,环境部署等,会用到一些常用的命令,下面是我平时使用或收集到的linux下的常用命令集: type command 查看一条命令是外部命令还是内部命令[[email protected] test]# type cdcd is a shell builtincd 是内部命令 [[email protected] test]# type mountmount is /bin/mountmount 是外部命令 内部命令可以直接访问环境变量,外部命令不可以 查看内部

[转]linux下终端常用命令和vi命令修改文件及保存的使用方法

首先介绍一下Ubuntu下各个目录的一般作用: / 这就是根目录,一台电脑有且只有一个根目录,所有的文件都是从这里开始的.举个例子:当你在终端里输入"/home",你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录. /root 系统管理员(root user)的目录.至于系统管理员的权限有多大我这里就不在废话了.因此,请小心使用root帐号. /boot 系统启动文件,所有与系统启动有关的文件都保存在这里 . /bin 这里是存放系统的程序. /etc 主要存放了系统配置

linux日常管理常用命令--w

linux日常管理常用命令--w 命令:w(linux管理员最常用的命令) [[email protected] ~]# w 14:45:41 up 2 min,  2 users,  load average: 0.10, 0.10, 0.04 USER     TTY      FROM              [email protected]   IDLE   JCPU   PCPU WHAT root     tty1     -                14:44   54.

Linux查看系统配置常用命令

Linux查看系统配置常用命令: 系统 # uname -a # 查看内核/操作系统/CPU信息# head -n 1 /etc/issue # 查看操作系统版本# cat /proc/cpuinfo # 查看CPU信息# hostname # 查看计算机名# lspci -tv # 列出所有PCI设备# lsusb -tv # 列出所有USB设备# lsmod # 列出加载的内核模块# env # 查看环境变量 资源# free -m # 查看内存使用量和交换区使用量# df -h # 查看各