day16–系统正则表达式

一、课程回顾

文件属性章节

[root@zzxCentOS7 ~]# ll -i /etc/hosts
16806797 -rw-r--r-- 1 root root 183 Jul 26 20:50 /etc/hosts

1.inode信息

inode block

2.文件类型和文件权限

f/- d l

查看文件类型命令:file

文件权限:r =4 w=2 x=1 无权限=0

. getenforce设置相关,系统自带有. 自创文件无.

3.硬链接数

硬链接:读取文件的多个入口 ln /A /B

特点:inode号码相同;源文件删除,硬链接文件依旧有效;目录无法创建硬链接。

软链接 :文件数据的快捷方式 ln -s /A /B

特点: inode号码不同;源文件删除,软链接文件失效;普通文件和目录都可创建软链接。

补充:如何确保数据真正删除

1)文件的硬链接数为0 i_link

2)文件没有被进程占用 i_count

4.属组和属主

用户类型:

超级管理员: root

虚拟用户: nobody

普通用户: zzx

5.文件大小

统计目录的大小 du -?

6.文件时间信息

修改时间信息 mtime

访问时间信息 atime

改变事件信息 ctime

find /zzx -type f -mtime +7 – 7天以前

find /zzx -type f -mtime -7 – 最近7天

find /zzx -type f -mtime 7 – 正好前面7天

date命令如何使用:ntpdate 时间同步

二、系统符号作用

1.简化操作 . … ~ ; &&

2.进行匹配 *

3

三、系统中的符号类型

1.系统符号 # $ ~

2.通配符号 * {}

​ 根据文件名称进行匹配

3.正则符号 *

​ 根据文件内容进行匹配

四、系统特殊符号

1.基础符号系列

1)$

用于取出变量中的内容

用于取出指定列的类容

表示用户命令提示符号

表示一行的结尾

2)!

表示取反或者排除

命令行中表示取出最近命令

用于表示强制操作处理 – vim底行模式保存退出 :wq!

3)| 管道符号

前一个命令的执行结果交给后面命令处理

常配合xargs命令使用 命令|xargs 命令

查找指定数据信息进行删除
find /zzx -type f -name "zzx*.txt"|xargs rm -rf
find /zzx -type f -name "zzx*.txt" -exec rm -rf {} \
find /zzx -type f -name "zzx*.txt" -delete
查找指定数据信息进行复制
find /zzx -type f -name "zzx*.txt" |xargs -i cp {} /zzx1/
find /zzx -type f -name "zzx*.txt" |xargs cp -t /zzx1/
find /zzx -type f -name "zzx*.txt" -exec cp -a {} /zzx1 \;
查找指定数据信息进行移动
find /zzx -type f -name "zzx*.txt" |xargs -i mv {} /zzx1/
find /zzx -type f -name "zzx*.txt" |xargs mv -t /zzx1/
find /zzx -type f -name "zzx*.txt" -exec mv -a {} /zzx1 \;
按照日期查找指定数据信息(主要用于批量删除历史数据信息)
find /zzx -type f -mtime +7
find /zzx -type f -mtime -7
find /zzx -type f -mtime 7
补充:取消别名

4)#

表示文件内容注释

表示root用户命令提示符

五、引号符号系列

’ ’ 输出信息,所见即所得

[root@zzxCentOS7 ~]# echo 'zzx $LANG'
zzx $LANG

" " 和’ '功能类似,但对特殊信息会做解析

[root@zzxCentOS7 ~]# echo "zzx $LANG"
zzx en_US.UTF-8

``($()) 将引号中的内容先执行,执行结束后交给引号外的命令进行处理

无引号 和" "功能类似,但是可以直接识别通配符

六、定向符号

> 标准输出重定向符号
2>   错误输出重定向符号
>>    标准输出追加重定向符号
2>>   错误输出追加重定向符号
<    标准输入重定向tr < xargs <
<<    标准输入追加重定向cat >>/zzx.txt<<EOF1234567EOF

将正确错误信息都输出到同一文件中

方法一:

[root@zzxCentOS7 ~]# echo zzx >> /zzx.log 2>>/zzx.log
[root@zzxCentOS7 ~]# cho zzx >> /zzx.log 2>>/zzx.log
[root@zzxCentOS7 ~]# cat /zzx.log
zzx
-bash: cho: command not found

方法二:

[root@zzxCentOS7 ~]# echo zzz &>/zzx.log
[root@zzxCentOS7 ~]# cat /zzx.log
zzz
[root@zzxCentOS7 ~]# eco zzz &>/zzx.log
[root@zzxCentOS7 ~]# cat /zzx.log
-bash: eco: command not found

方法三:

[root@zzxCentOS7 ~]# echo zzx>/zzx.log 2>&1
[root@zzxCentOS7 ~]# cat /zzx.log
zzx
[root@zzxCentOS7 ~]# eho zzx>/zzx.log 2>&1
[root@zzxCentOS7 ~]# cat /zzx.log
-bash: eho: command not found

七、路径信息符号

1.单点符号 .

表示当前目录

2.双点符号 …

表示上级目录

3.波浪符号 ~

表示用户家目录信息,超级用户/root,普通用户:/home/用户名称

4.横线符号 -

两目录间切换

八、逻辑符号

&& 与:前一个命令执行成功,在执行后面的命令

|| 或:前一个命令执行失败,再执行后面的命令

先创建一个目录,再在其中创建一个文档。一条命令
[root@zzxCentOS7 ~]# mdir /zzx/zzx1;touch /zzx/zzx1/zzx.txt
-bash: mdir: command not found          第一条第二条命令都执行失败
touch: cannot touch ‘/zzx/zzx1/zzx.txt’: No such file or directory
[root@zzxCentOS7 ~]# mdir /zzx/zzx1 touch /zzx/zzx1/zzx.txt
-bash: mdir: command not found
[root@zzxCentOS7 ~]# mdir /zzx/zzx1 && touch /zzx/zzx1/zzx.txt
-bash: mdir: command not found          第一条命令执行失败。无法执行第二条命令
[root@zzxCentOS7 ~]# mkdir /zzx/zzx1 && touch /zzx/zzx1/zzx.txt
[root@zzxCentOS7 ~]# ll /zzx/zzx1
total 0                                 执行成功
-rw-r--r-- 1 root root 0 Aug 14 20:45 zzx.txt
删除失败,在error.txt中生成失败信息
[root@zzxCentOS7 ~]# rm- /zzx/zzx1/zzx1.txt || echo "failed">>/zzx/zzx1/error.txt
-bash: rm-: command not found
[root@zzxCentOS7 ~]# cat /zzx/zzx1/error.txt
failed                          第二条命令执行成功
[root@zzxCentOS7 ~]# rm /zzx/zzx1/zzx.txt || echo "failed" >> /zzx/zzx1/error.txt
[root@zzxCentOS7 ~]# cat /zzx/zzx1/error.txt
failed
failed
[root@zzxCentOS7 ~]#

九、系统通配符号

利用通配符号匹配文件名称信息

1 *

模糊匹配所有内容

find -name "*.txt"
ll /zzx*

2 {}

生成序列信息(一行)

生成连续序列

echo{01..10}
echo{a..z}

生成不连续序列

echo{1..10..2}   奇数序列
echo{0..10..2}  偶数序列

生成组合序列

[root@zzxCentOS7 zzx1]# echo {a,b}{1,2}         简单用法
a1 a2 b1 b2
[root@zzxCentOS7 zzx1]# echo a{1,2}
a1 a2
[root@zzxCentOS7 zzx1]# echo zzx.txt{,.bak}
zzx.txt zzx.txt.bak
[root@zzxCentOS7 zzx1]# touch error.txt
[root@zzxCentOS7 zzx1]# cp error.txt{,.bak}        进阶用法:    备份命令简化
[root@zzxCentOS7 zzx1]# ls
error.txt  error.txt.bak

练习

[root@zzxCentOS7 zzx]# touch zzx.txt{,.bak}     创建出zzx.txt及其备份文件
[root@zzxCentOS7 zzx]# ls
zzx1  zzx.txt  zzx.txt.bak
[root@zzxCentOS7 zzx]# rm zzx.txt
[root@zzxCentOS7 zzx]# ls
zzx1  zzx.txt.bak
[root@zzxCentOS7 zzx]# cp /zzx/zzx.txt{.bak,}  将已删除的zzx.txt恢复
[root@zzxCentOS7 zzx]# ls
zzx1  zzx.txt  zzx.txt.bak
[root@zzxCentOS7 zzx]#

十、正则符号

1.作用

匹配文件内容信息。常出现在开发语言中。经常被三剑客命令使用

2.基础正则符号

basic regular expression

1)尖角 ^

以…开头的信息 ll /zzx|grep “^z”

2)$

以…结尾的信息 ll -F /etc |grep “/$”

3)^$

空行

3.扩展正则符号

extended regular expression

day16--系统正则表达式相关推荐

  1. Day16(正则表达式,枚举)

    一.正则表达式 package com.shujia.wyh.day16; /*         需求:验证QQ号是否符合         规定         1.必须是5-10位         ...

  2. Linux系统正则表达式用法笔记

    正则表达式:能用某种模式去匹配一类字符串的公式,它是由一串字符和元字符组成的字符串. 元字符就是阐述字符表达式的内容.转换和描述各种操作信息的字符. 常见的一些基础的正则表达式 1.".&q ...

  3. Day16 Java 正则表达式、枚举

    正则表达式 正则表达式的概述 使用单个字符串来描述或者匹配一系列符合某种语法规则的字符串 正则表达式的使用步骤: 1.通过大量的字符串寻找规律,得出定义规则 2.使用这种规则去匹配新的字符串 3.匹配 ...

  4. linux邮箱格式正则表达式grep,Linux系统grep正则表达式的介绍

    Linux系统正则表达式是字符串的标示方法, 主要的正则表达式有sed.vim.awk,当然还包括grep正则表达式.前文我们已经介绍了Linux系统正则表达式的用法,今天就来着重介绍一下Linux系 ...

  5. 3.请执行命令取出linux中eth0的IP地址(考试题答案系列)

    说明:本文为老男孩linux培训某节课前考试试题及答案分享博文内容的一部分,也是独立成题的,你可以点下面地址查看全部的内容信息.http://oldboy.blog.51cto.com/2561410 ...

  6. 运维工程师打怪升级进阶之路 V2.0

    很多读者伙伴们反应总结的很系统.很全面,无论是0基础初学者,还是有基础的入门者,或者是有经验的职场运维工程师们,都反馈此系列文章非常不错! 命名:<运维工程师打怪升级之路> 版本:V1.0 ...

  7. [收藏]可能是史上最全免费编程书籍

    目录 语言无关 IDE MySQL NoSQL PostgreSQL Web WEB服务器 其它 函数式概念 分布式系统 在线教育 大数据 操作系统 数据库 智能系统 正则表达式 版本控制 程序员杂谈 ...

  8. 开源书籍和网站:free-programming-books

    建议 中文和英文的开源书籍,建议多看英文版本,资源和知识更丰富. 在线课程,对于部分国外网站如果打不开可以在b站搜索. 本文摘抄链接:https://github.com/EbookFoundatio ...

  9. GitHub编程资源分享

    源参考链接:https://github.com/crane-yuan/free-programming-books/blob/master/free-programming-books-zh.md ...

最新文章

  1. 06- 本地方法接口
  2. Datawhale组队-Pandas(下)时序数据(打卡)
  3. python图像下采样_[Python图像处理]十二.图像向下取样和向上取样
  4. Event Recommendation Engine Challenge分步解析第五步
  5. pyhton中的wsgi是什么?
  6. Java Swing Mysql学生信息管理系统
  7. 将当前的Git分支设为主分支
  8. 2017 Multi-University Training Contest - Team 4:1002. Classic Quotation(KMP+DP)
  9. Asp.Net WebAPI传递json对象、后台手动接收参数
  10. Apache Flink 零基础入门教程(六):状态管理及容错机制
  11. oracle中job的retry次数,Oracle 19c注意事项: DBMS_JOB 行为变化
  12. maven3常用命令
  13. macbook 安装mysql_mac下安装mysql
  14. ubuntu 安装搜狗输入法
  15. 江苏省计算机二级python往年卷_历年江苏省计算机二级考试真题及答案2008-2009
  16. pdf批量转换为图片
  17. C#打印机套打三联单
  18. DiskPart介绍
  19. java 异或 排序_Java的位运算符详解实例——与()、非(~)、或(|)、异或(^)...
  20. 北漂生活第十八弹-日子还照旧

热门文章

  1. 案例:图书管理(包括图书列表展示,添加、修改、删除图书功能)
  2. 小米将推1500元的红米note9,OPPO却继续玩低配高价
  3. 如何创建一个四维的矩阵,存储多个3通道彩色图片
  4. Linux 如何刷新 DNS 缓存
  5. 下午两点,要开始转数据了。开始计算机程序设计艺术之路
  6. 项目实训- 基于unity的2D多人乱斗闯关游戏设计与开发(小地图修改完善)
  7. STM32使用printf重定向到USART(串口)并打印数据到串口助手
  8. 【CC++开源库】单片机嵌入式中的C语言日志库
  9. matlab解方程出现root,如何获得数值解:
  10. 算法系列教程02 - 从罗素悖论到图灵机