Linux运维笔记-课后作业-正则表达式和简单文件操作
2017-03-29 14:16
483 查看
以下操作都是在Red-hat 7.0操作系统下运行的。
首先先简单了解以下正则表达式。
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
使用正则表达式可以更快,更有效的查找我们想要的的文件,从而方便我们处理。
下面通过练习,很容易能体会正则表达式的强大。
用一条命令建立12个文件WESTOS_classX_linuxY(X的数值范围为1-2,Y的数值范围为1-6)。
打开red-hat终端,在student用户下创建study目录,使用touch命令创建文件。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/9d825cb14cfdeb04590bccba414b763f)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/f580c39e9abb0de8672b6e2150d8a759)
接下来在/mnt下VERSION中创建8个名为redhat-versionX(X的取值是1~8)。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/d2abc34bde8bf27cfc0245e61cff7586)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/9be516b44c7e84d958f906bebcf33818)
ps:这里注意“{}”这个正则表达式一定要注意,里面的 “.”一定是两个,不能多也不能少。
接下来将新创建的文件使用命令来管理。
用一条命令把redhat_versionX中的带有奇数的文件复制到桌面的SINGLE中
用一条命令把redhat_versionX中的带偶数数的文件复制到/DOUBLE中
在linux中复制的命令是cp,其实cp有好多的参数可以去学习,如果想更深入去了解,还是去man一下。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/d5d0442bbaf2b6ece962c89552c1cf9b)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/bc54a7248e4a971cd9de45fcf9344ed9)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/d7c9b153cd0e373468f687bc5d52e2a5)
用一条命令把WESTOS_classX_linuxY中class1的文件移动到当前用户桌面的CLASS1中
用一条命令把WESTOS_classX_linuxY中class2的文件移动到当前用户桌面的CLASS2中
这里的移动就是mv了,不懂还是去man一下。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/d51b8d5ba3c93fdca13090773f9a57f1)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/97776a2ae6ce8e4931788e292f72dce3)
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/5b8ce23031f62cea01994c89ae2517ba)
接下来快速查找文件进行匹配,备份/etc目录中所有带有名字带有数字并且以.conf结尾的文件到桌面上的confdir中。
思路:要想备份/etc目录下的文件,首先先进入/etc这个目录,要找出带有名字为数字的,就联想到[[:digit:]]这个正则表达式,要以.conf结尾,但是我们不知道数字两边到底多少个字母或者数字,所以我们用来匹配。最后的模型就是[[:digit:]]*.conf。相关的正则表达式如下。
’ * ’ ###匹配0到任意字符
? ###匹配单个字符
[[:alpha:]] ###匹配单个字母
[[:lower:]] ###匹配单个小写字母
[[:upper:]] ###匹配单个大写字母
[[:digit:]] ###匹配单个数字
[[:alnum:]] ###匹配单个数字或字母
[[:punct:]] ###匹配单个符号
[[:space:]] ###匹配单个空格
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/96bc191e4f5938b44274ca2eaaca4c15)
最后删掉刚才建立或者备份的所有文件。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/20/e461a088303e14d1ab24d1a32c6479ea)
这个rm命令就是删除的意思,值得注意的是,rm -rf这个命令,特别危险,这是强制递归删除。如果操作不当,直接损坏系统那也是常有的事。
首先先简单了解以下正则表达式。
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
使用正则表达式可以更快,更有效的查找我们想要的的文件,从而方便我们处理。
下面通过练习,很容易能体会正则表达式的强大。
用一条命令建立12个文件WESTOS_classX_linuxY(X的数值范围为1-2,Y的数值范围为1-6)。
打开red-hat终端,在student用户下创建study目录,使用touch命令创建文件。
接下来在/mnt下VERSION中创建8个名为redhat-versionX(X的取值是1~8)。
ps:这里注意“{}”这个正则表达式一定要注意,里面的 “.”一定是两个,不能多也不能少。
接下来将新创建的文件使用命令来管理。
用一条命令把redhat_versionX中的带有奇数的文件复制到桌面的SINGLE中
用一条命令把redhat_versionX中的带偶数数的文件复制到/DOUBLE中
在linux中复制的命令是cp,其实cp有好多的参数可以去学习,如果想更深入去了解,还是去man一下。
用一条命令把WESTOS_classX_linuxY中class1的文件移动到当前用户桌面的CLASS1中
用一条命令把WESTOS_classX_linuxY中class2的文件移动到当前用户桌面的CLASS2中
这里的移动就是mv了,不懂还是去man一下。
接下来快速查找文件进行匹配,备份/etc目录中所有带有名字带有数字并且以.conf结尾的文件到桌面上的confdir中。
思路:要想备份/etc目录下的文件,首先先进入/etc这个目录,要找出带有名字为数字的,就联想到[[:digit:]]这个正则表达式,要以.conf结尾,但是我们不知道数字两边到底多少个字母或者数字,所以我们用来匹配。最后的模型就是[[:digit:]]*.conf。相关的正则表达式如下。
’ * ’ ###匹配0到任意字符
? ###匹配单个字符
[[:alpha:]] ###匹配单个字母
[[:lower:]] ###匹配单个小写字母
[[:upper:]] ###匹配单个大写字母
[[:digit:]] ###匹配单个数字
[[:alnum:]] ###匹配单个数字或字母
[[:punct:]] ###匹配单个符号
[[:space:]] ###匹配单个空格
最后删掉刚才建立或者备份的所有文件。
这个rm命令就是删除的意思,值得注意的是,rm -rf这个命令,特别危险,这是强制递归删除。如果操作不当,直接损坏系统那也是常有的事。
相关文章推荐
- linux初学笔记(2)正则表达式与简单的文件操作
- Linux运维笔记-课后作业-tar打包操作和rsync同步命令
- Linux运维笔记-课后作业-输入输出的练习和vim的简单使用
- Linux运维笔记-课后作业-简单登陆与使用
- Linux运维笔记-课后作业-脚本执行多功能操作虚拟机
- Linux运维学习笔记之六:Linux中的文件类型、属性、正则表达式、权限体系
- Linux学习笔记:linux下的文件以及对文件的简单操作
- LAMP兄弟连原创视频教程(PHP笔记四--正则表达式,文件,目录操作)
- Linux运维笔记-课后作业-ip DNS 网关的设定
- Linux运维笔记-文档总结-管理系统中的简单分区和文件系统
- 运维学习之Linux系统文件增删改查和目录的创建及正则表达式及test2&3
- Linux 学习笔记 -- 第三部分 学习 shell 与 shell script -- 第12章 正则表达式与文件格式化处理
- Linux基本操作 10----- 正则表达式与文件格式化处理
- Linux运维笔记-课后作业-用户与用户组
- Linux运维笔记-课后作业-日志的内容同步和时间同步
- Linux运维笔记----管理系统中的简单分区和文件系统
- Linux运维笔记-文档总结-Linux目录和正则表达式
- Linux运维学习笔记-通配符及正则表达式知识总结
- Linux运维笔记-课后作业-非交互式建立swap分区(脚本执行)
- Linux运维笔记-课后作业-软件安装