• linux下正则表达式


    正则表达式

    1.du -sh /* 查看根下所有目录占用的内存是多少

    2.lsof -i :22 查看22端口

    3.清空文件,cat /dev/null>access_log清空一个文件

    4.如果在oldboy/ett目录下在创建一个目录,那么/oldbot/ett的硬链接数是多少,为什么?

    2个,因为子目录下的..是父目录的硬链接

    5检测一个命令是否是内置命令:type 命令名称

    Linux的多用户多任务介绍:

    1.用户的身份是用UIDuseridentify)和GID(groupidentify)来识别的.

    2.超级用户的UID=0GID=0,再生产环境中一般禁止用root用户直接ssh连接服务器。其他的用户都是虚拟用户,特点是不可以登录

    1. 0代表超级用户,1-499代表虚拟用户,500-65535代表普通用户

    4.服务运行时需要用户角色的,可以不用登陆,因此,工作中我们要运行mysql数据库,可以创建如下用户

    group -g 49

    useradd  -u  49  -s  /sbin/nologin  -g  49

    -s解释器命令改为不需要用户登录,直接可以进入

    id mysql

    tail -1 /etc/passwd

    su - mysql

    chattr -i /etc/passwd /etc/shadow /etc/group /etc/gshadow 添加一个锁

    chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow 解锁

    linux中有3中类型的时间  stat 文件名

    正则表达式

    1.正则表达式就是一套处理字符串规则和方法,以行为为单位对字符串进行处理,通过特殊符号辅助,快速的过滤,替换某些字符串。

    2.运维中,大量的访问错误日志,如何快速的过滤出我们想要的内容,就需要正则表达式

    3.Linux中的正则表达式基于awk/sed/grep的正则表达式

    ^word:表示是以word开头

    word$: 表示以word结尾的

    grep “M” oldboy.txt 过滤出文件中的有M的句子

    grep -i “M” oldboy.txt 不区分大小写

    grep “m$” oldboy.txt 过滤出以m结尾的

    4 .表示任意一个字符

    grep “bl.og” olboy.txt 匹配出有blog的句子

    gerp “bo.g” oldboy.txt匹配出有bog的句子     

    5 转义字符,让有着特殊身份意义的字符还原原型

    6. grep -n . oldboy.txt 这里的点代表所有,-n是将所有行都加上行号

    grep “.” oldboy.txt 将所有的点都过滤出来

    *:重复0个或多个前面一个字符,例如0*

    grep “.*” oldboy 匹配所有

    grep “^.*” oldboy.txt 匹配以任意字符开头的

    7.[]字符集合的重复特殊字符的符号

     grep “b[lo]og” oldboy.txt 匹配以l或者o组成的单位blog或者boog;

    8.[^]表示非以什么内容开头的

    grep “[^0-9]” oldboy.txt 匹配不包含数字的句子

    9.{n,m}重复nm次,前一个重复字符如a{n,m}

    a{n,} 重复至少n次,前一个重复字符;

    {n}重复n次,前一个字符

    grep “64{2,3}448” oldboy.txt

    扩展正则表达式:ERE

    1+表示重复一个或一个以上前面的字符

    grep -E “64+581” oldboy.txt       

    egrep “64+581” oldboy.txt

    2)?表示0个或者1个字符

    grep -E “464?581” oldboy.txt

    egrep “464?581” oldboy.txt

    3)用竖线表示查找多个符合的字符串

    egrep “33041|1521” /etc/services

    4)找出“用户组”字符串,grep -E “b(lo|oo)g” oldboy.txt 找出blogboog;

    题目:取出eth0IP地址

    第一种办法

     ifconfig eth0|grep “inet addr” |awk -F “:” ‘{print $1}’|awk -F “ ” ‘{print $1}’

     第二种办法

    ifconfig  eth0|sed -n “2p” |awk -F “【: 】+”‘{print  $1}

     以冒号空格为分隔符,+号代表把多个连续的分隔符变为1个。

    第三种方法

    ifconfig eth0 |sed -n ’inet addr/p’|sed ‘s#^.*addr:##g’|sed ‘s#  Bc.*$##g’ 

    第四种方法

    ifconfig eyh0|sed -n ‘s#^.*addr:(.*)  Bc.*$#1#gp’

    在括号中的内容就是代表了IP,后面的1取代别的内容

    echo “ddd kkk”>b.txt

    sed ‘s#(ddd) (kkk)#1 2#g’ b.txt

    ifconfig |sed -n ‘^.#addr:([0-9].*)  Bcast:([0-9].*):*$#|2#gp’

    一个空格都不可以错,要非常精确

    如何取得/etiantian的权限?

    stat -c %a /etiantian直接把644的权限过滤出来

    如果在/oldboy/ett下在创建一个目录test,ett的硬链接数是多少

    3个,test下的..代表上一级目录的硬链接

    Eth0网卡路径:/etc/sysconfig/network-scripts/ifcfg-eth0

    客户端路径:/etc/resolve.conf

    一个lamp服务器被植入了广告,网站打开时就会调用这个地址造成恶劣的影响。

    思路:遍历所有的目录文件,把以上被植入的内容删掉

      模拟cd /root/oldboy 植入内容

    find /root/oldboy -type f|xargs sed -i ‘1 i <script language=javascripts src=www.baidu.com></script>’

    所有的文件和包都被植入了广告

    1.和运维人员确认问题

    2.制定方案,备份数据,然后批量修改

    3.写解决方案,给他们的运维

    4.询问结果,并告知写详细查看日志,寻找问题来源

    5.提供亡羊补牢的方案(站点目录的解决方案)

    把黑客发的内容删除

    find /root/oldboy -type f|xargs sed -i ‘1 i /<script language=javascripts src=www.baidu.com></script>/d’

    不要忘了寻找问题的来源并且修补漏洞,网站的目录权限降低,上传附件的入口没有详细过滤。

     

     

     

    echo -n “oldboy”;echo “oldboy”不换行输出

    echo -n 123

    123[root@~]#

    echo -e “oldboy oldboy” 换行

    请给出如下的格式date命令,11-02-26,再给出实现按周输出,如输出周六;

    date +%y-%m-%d

    date -s 修改时间

    date +%w显示周几

    要用echo打印出来要用反引号

    echo `date +%F`  或者$(date %F)

    企业案例打包

    1.tar zcvf oldboy.tar.gz ./oldboy

    2.tar tf oldboy.tar.gz查看包的内容

    3.每天打个包的日期 tar zcvf oldboy-$(date +%F).tar.gz ./oldboy 每天打个包,显示日期

    4.保留最近7天的内容 find /log -type f -name “*.log” -mtime +7|xargs rm -f

    当用普通用户时,执行ifconfig,提示没有命令什么原因

       因为ifconfig是系统命令,可以用全路径执行,可以放在家目录下的.bash_profile下;

            

     

     

  • 相关阅读:
    Lua Coroutine详解
    Lua IO库详解
    vue 组件基本使用
    js 发送异步请求
    小程序保存图片到相册
    js 学习四 对象应用 吃货游戏
    js 学习三 Array
    js 学习二 字符串常用方法
    js 学习一 猜数字游戏
    phpmyadmin导入大容量.sql文件
  • 原文地址:https://www.cnblogs.com/pythonbz/p/6284190.html
Copyright © 2020-2023  润新知