第十三天

I/O

Input设备

Output设备

系统设定

默认输出设备:标准输出 STDOUT

默认输入设备:标准输入 STDIN

标准错误输出:STDERR 2

标准输入:键盘

标准输出和标准错误输出:显示器

I/O重定向

linux中:

>:覆盖输入

>>:追加输出

set -c:进制对已经存在的文件覆盖重定向。强制覆盖输出泽恩使用>|

set +c关闭上述功能

2>:重定向错误输出

2>>:追加错误输出

&>:重定向标准输出或错误输出至同一个文件

<:输入重定向

<<:Here Document

管道:前一个命令的输出,作为后一个命令输入的

命令1|命令2|命令3...

grep及其egrep

grep的用法

grep,egrep,fgrep 用法:grep ‘root‘ /etc/...

grep:根据模式搜索文本,并将符合模式的文本行显示出来

Pattern(模式):文本字符和正则表达式的元字符组合而成的匹配条件

grep [options] PATTERN [file...]

-i:不考虑大小写

--color 显示匹配条件为高亮颜色

-v:显示没有匹配到的行(反向显示)

-o:只显示被模式匹配到的字符串

-E:扩展表达式

-A#:(#为数字)显示其后#行

-B#:显示其前#行

-C#:显示其前后#行

正则表达式:REGular EXpression REGEXP

元字符:

.:单个字符

匹配次数(贪婪模式)

*:匹配其前面字符任意次

a*B -->任意次a

.*:任意长度的任意字符

\?:匹配其前面字符1次或0次

\{m,n\}:匹配其前面的字符至少m次,至多n次

\{1,\}:至少1次,至多不限

\{0,3\} :至少不限,至多3次

位置锚定:

^:锚定行首,此字符后面的任意内容必须出现在行首

$:锚定行尾,此字符前面的任意内容必须出现在行尾

^$:空白行

\<或\b:其后面的任意字符必须以单词首部出现

\<或\b:其前面的任意字符必须以单词尾部出现

注意\b位置

分组:

\(ab\)*

后向引用

\1:引用第一个左括号与之匹配的右括号所包括的内容

\2:引用第二个。。。。。。。

[]:匹配指定范围内的任意单个字符

[^]:匹配范围外的任意单个字符

字符集合:[:digit:],[:lower:],[:upper:],[:punct:],[:space:],[:alnum:]

数字    ,小写字母,大写字母,标点    ,空白    ,所有字符字母

fgrep:不支持正则表达式(搜索速度快)

扩展正则表达式:

grep -E =egrep

字符匹配:.,[],[^]

次数:*,?,+(匹配其前的字符至少1次)=\{1,\}

位置锚定:^,$,\<,\>

分组:()  \1,\2,\3,......

或者: "a|b"

习题:找到a.txt中1--255的整数(默认为整数)

egrep ‘\<(1-9)|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]‘ a.txt

找出a.txt中的IP地址:

IPV4:5类:A,B,C,D,E

A:1-127   B:128-191   C:192-223

时间: 2024-10-16 09:54:28

第十三天的相关文章

winform学习日志(二十三)---------------socket(TCP)发送文件

一:由于在上一个随笔的基础之上拓展的所以直接上代码,客户端: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net.Sockets; using Sys

算法系列之二十三:离散傅立叶变换之音频播放与频谱显示

算法系列之二十三:离散傅立叶变换之音频播放与频谱显示 算法系列之二十三离散傅立叶变换之音频播放与频谱显示 导语 什么是频谱 1 频谱的原理 2 频谱的选择 3 频谱的计算 显示动态频谱 1 实现方法 2 杂项说明 结果展示 导语 频谱和均衡器,几乎是媒体播放程序的必备物件,没有这两个功能的媒体播放程序会被认为不够专业,现在主流的播放器都具备这两个功能,foobar 2000的十八段均衡器就曾经让很多人着迷.在上一篇对离散傅立叶变换介绍的基础上,本篇就进一步介绍一下频谱是怎么回事儿,下一篇继续介绍

UI标签库专题十三:JEECG智能开发平台 ckfinder(ckfinder插件标签)

1. ckfinder(ckfinder插件标签) 1.1. 参数 属性名 类型 描述 是否必须 默认值 name string 属性名称 是 null value string 默认值 否 null width string 显示图片宽(上传类型为Images时) 否 null height string 显示图片高(上传类型为Images时) 否 null buttonClass string 按钮样式 否 null buttonValue string 按钮文本 否 null upload

QT开发(六十三)——QT事件机制分析

QT开发(六十三)--QT事件机制分析 一.事件机制 事件是由系统或者QT平台本身在不同的时刻发出的.当用户按下鼠标.敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件.一些事件在对用户操作做出响应时发出,如键盘事件等:另一些事件则是由系统自动发出,如计时器事件. 事件的出现,使得程序代码不会按照原始的线性顺序执行.线性顺序的程序设计风格不适合处理复杂的用户交互,如用户交互过程中,用户点击"打开文件"将开始执行打开文件的操作,用户点击"保存文件"将开始执

【第五组】第十三次冲刺例会纪要 2017/7/26

第十三次冲刺例会纪要 开发小组:Hunger Killer 冲刺经理:衣俊霖 小组成员:张竣杰,董泽昊,赵美,宋寅瑜,徐志国 A:张竣杰 负责部分:管理员界面 昨日所做工作:研究关于下拉列表刷新问题 遇到的问题:尚未解决 今日计划:尝试解决,优化界面 B:衣俊霖 负责部分:注册界面 昨日所做工作:记住密码已实现,优化界面 遇到的问题:构思用户服务的函数 今日计划:写用户服务,写登录后端 C:董泽昊 负责部分:趣味决策 昨日所做工作:图片上传显示解决 遇到的问题:界面急需优化 今日计划:链接真·数

javascript高级程序设计 第十三章--事件

javascript高级程序设计 第十三章--事件js与HTML的交互就是通过事件实现的,事件就是文档或浏览器窗口中发生的一些特定的交互瞬间. 事件流:事件流描述的是从页面中接收事件的顺序,IE的是事件冒泡流,Netscape的是事件捕获流,这个两个是完全相反的事件流概念. 事件冒泡:由最具体的元素接收,然后逐级向上传播到更高级的节点,即事件沿DOM树向上传播,直到document对象. 事件捕获:不大具体的节点应该更早接收到事件,相当于沿DOM节点树向下级传播直到事件的实际目标,在浏览器中,是

嵌入式Linux裸机开发(十三)——I2C通信

嵌入式Linux裸机开发(十三)--I2C通信 一.IIC协议 1.IIC总线简介 I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备.I2C总线是一种串行数据总线,只有二根信号线,一根是双向的数据线SDA,另一根是时钟线SCL.在 I2C总线上传送的一个数据字节由八位组成.总线对每次传送的字节数没有限制,但每个字节后必须跟一位应答位. IIC总线是一种串行总线,用于连接微控制器及其外围设备,具有以下特点:

第十三周学习进度条

第十三周 所花时间(包括上课) 11 代码量(行) 100 博客量(篇) 3       了解到的知识点 通过这周学习到了: 1.这周老师讲到了软件工程质量,了解到了CMMI的概念,企业的发展与实力与其密切相关:软件的发布管理了解到即使优秀的团队也会发布有已知缺陷的软件,在发布后要有会诊小组针对具体bug进行修复.老师留下了一个论坛找小水王的编程题目,提到了减少时间复杂度来寻找,采用了计数器,编写并学习其中的思想 2.在团队开发中,这周有一门考试所以进展并不是那么大,仍旧在进行亮屏后直接进行拍照

学习进度第十三周

  第十三周 所花时间(包括上课) 16h(4h上课,12课下) 代码量(行) 460 博客量(篇) 4 了解到的知识点 1.这个星期主要进行了一次小水王的编程,回想起来很简单,但当初真的把它想得太复杂了. 明白了用最简单的方法解决问题,哪怕重复部分太多,代码量太多,也是一种好方法,比如这次小水王就是 一连串的if else 就解决了问题. 2.开始了软件工程团队开发的第二阶段的冲刺,明白了蓝牙权限和蓝牙数据传输的方法. 3.在java EE 的实验编程中,学习了MVC 框架,Struts 框架

学习进度条 第十三周

  第十三周 所花时间(H) 周一上课2小时 周四上课2小时 平均每天编程时间2小时 合计18小时 代码量(行) 1000 博客量(篇) 2 了解到的知识点 字符串头文件的各种函数(比如查找函数find()) 安卓透明提示层的创建等