三剑客之sed&grep
第1章 练习题
1.1 第1题 取得/etc/hosts 文件的权限
如何取得/etc/hosts 文件的权限对应的数字内容,如-rw-r--r-- 为 644,要求使用命令取得644 这样的数字。
1.1.1 方法一 awk 指定分隔符
[root@znix ~]# stat /etc/hosts |awk -F "[0/]" 'NR==4{print $2}'
644
1.1.2 方法二 stat -c%a
[root@znix ~]# stat -c%a /etc/hosts
644
1.2 第2题 目录的硬链接数
linux 下通过 mkdir 命令创建一个新目录/clsn/ett,它的硬链接数是多少,为什么?
如果在/clsn/ett下面再创建一个目录 test。再问/clsn/ett 的硬链接数是多少?为什么。
1.2.1 新目录的硬链接数为2
[root@znix clsn]# ls -ldi ett/ ett/.
151313 drwxr-xr-x 2 root root 4096 Sep 4 10:09 ett/
151313 drwxr-xr-x 2 root root 4096 Sep 4 10:09 ett/.
1.2.2 目录下的硬链接数为 2+下级目录数
[root@znix clsn]# mkdir -p ett/dir01
[root@znix clsn]# ls -ldi ett/ ett/. ett/dir01/..
151313 drwxr-xr-x 3 root root 4096 Sep 4 10:11 ett/
151313 drwxr-xr-x 3 root root 4096 Sep 4 10:11 ett/.
151313 drwxr-xr-x 3 root root 4096 Sep 4 10:11 ett/dir01/..
1.3 第3题 取出ip地址
执行命令取出 linux中 eth0 的 IP地址。
1.3.1 方法一 awk
[root@znix ~]# ifconfig eth0|awk -F "[ :]+" 'NR==2{print $4}'
10.0.0.201
1.3.2 方法二 grep
[root@znix ~]# ifconfig eth0|egrep "([0-9]{1,3}\.?){4}" -o |head -1
10.0.0.201
1.3.3 方法三 sed 反向引用
[root@znix ~]# ifconfig eth0|sed -nr '2s#^.*dr:(.*) Bc.*$#\1#gp'
10.0.0.201
1.4 第4题 网卡配置文件的路径DNS的路径
请给出默认情况 eth0 网卡配置文件的路径及客户端 DNS的路径。
eth0 网卡
/etc/sysconfig/network-scripts/eth0
DNS配置
/etc/resolv.conf
1.5 第5题
查找当前目录下所有文件,并把文件中的 www.etiantian.org 字符串替换成 www.clsn.cc
[root@znix ~]# find /* |sed 's#www.etiantian.org#www.clsn.cc#g'
1.5.1 运维职责
1.数据不能丢
2.网站7*24运行
3.用户体验好 尽量让用户从内存 读/写
1.5.2 网站有关的问题从发现到解决的过程
1、运营人员、网站用户发现问题,网站有弹窗广告。
2、运营人员报给开发人员,开发联系运维人员。开发和运维共同解决。
3、开发发现的问题原因就是所有站点目录被嵌入了一段JS代码。
4、运维人员解决问题:
a) 备份原始出问题的原始文件。
b) find+sed替换。
5、详细查看日志,寻找问题发生来源。
6、提供亡羊补牢解决方案
1.6 第8题 内容在同一行输出
在一个命令上加什么参数可以实现下面命令的内容在同一行输出。
-n 不输出每行行尾的回车
-e 让echo支持 \n \t 转移字符系列
\n 换行
\t tab键
[root@znix etc]# echo -n "123" ; echo "223"
123223
[root@znix etc]# echo -n "123"
123[root@znix etc]#
[root@znix etc]# echo -e "123\n"
123
[root@znix etc]# echo -ne "123\n"
123
1.7 第9题 date相关 时间同步
请给出如下格式的 date 命令 例:11-02-26。在给出实现按周输出 比如:周六输出为 6,请分别给出命令。
1.7.1 日期
%F 与 %Y-%m-%d 相同
[root@znix etc]# date +%F
2017-09-04
[root@znix etc]# date +%Y-%m-%d
2017-09-04
1.7.2 时间
%H:%M:%S 与 %T相同
[root@znix etc]# date +%T
10:57:48
[root@znix etc]# date +%H:%M:%S
10:58:53
1.7.3 时间和周数
%w 表示周
[root@znix ~]# date +%F_%w
2017-09-04_1
1.7.4 手动设置系统日期
使用date -s 命令,手动设置命令,但是很少使用。
[root@znix ~]# date -s "20170101 11:41:00"
Sun Jan 1 11:41:00 CST 2017
1.7.5 自动同步系统时间
ntpdate 联网同步主机时间。
[root@znix ~]# ntpdate ntp1.aliyun.com
4 Sep 15:17:22 ntpdate[11593]: step time server 182.92.12.11 offset 27.049824 sec
1.8 第10题 环境变量问题
当从root用户切到普通用户clsn时,执行ifconfig会提示。
-bash: command not found.
1.8.1 运行目录的过程
先去PATH找
找到 运行命令解释器 shell
找不到 提示 command not found
1.8.2 临时修改 PATH
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/tmp
1.8.3 永久修改 PATH
PATH 内容放到/etc/profile 文件最后
soucre /etc/profile 让它生效
1.9 第11题 打印三天前的日期格式
-d "-3day" 表示三天前
-d "3day" 表示三天后
[root@znix ~]# date +%F
2017-09-04
[root@znix ~]# date -d "-3day" +%F
2017-09-01
[root@znix ~]# date -d "3day" +%F
2017-09-07
1.10 第12题 已知/clsn/test.txt 文件内容为:
clsn
xizi
xiaochao
请问如何把文件中的空格过滤掉。
1.10.1 方法一 grep
-v 排除 ^$ (空行)
[root@znix ~]# grep -v "^$" test.txt
clsn
xizi
xiaochao
1.10.2 方法二 awk
'!/^$/' 排除空行
[root@znix ~]# awk '!/^$/' test.txt
clsn
xizi
xiaochao
1.10.3 方法三 sed
'/^$/d' 排除空行
[root@znix ~]# sed '/^$/d' test.txt
clsn
xizi
xiaochao
1.10.4 sed与awk
awk '找谁{干啥}'
sed '找谁干啥'
1.11 第13题 已知/clsn/ett.txt 文件内容为
clsn
clssssn
test
请使用 grep或 egrep 正则匹配的方式过滤出前两行内容
1.11.1 + 表示前一个字符出现一次或一次以上。
[root@znix ~]# egrep "c+l+n" test.txt
clsn
clssssn
1.11.2 排除以t开头的
[root@znix ~]# grep -v "^t" test.txt
clsn
clssssn
1.11.3 排除以t结尾的
[root@znix ~]# grep "^[^t]" test.txt
clsn
clssssn
1.12 第14题
1.12.1 请描述下列路径的内容是做什么的?
/var/log/messages 系统普通日志
/var/log/secure 用户登陆日志
/etc/fstab 开机自动挂载
/etc/profile 配置别名 环境变量
/etc/spool/cron/root 定时任务
第2章 回顾
2.1 linux启动过程
1、接通电源
2、进入BIOS自检
3、进入mbr引导
4、进入grub选择内核
5、加载内核
6、运行init进程
7、读取运行级别
8、配置主机名ip地址/etc/rc.sysinit
9、根据不同的运行级别运行不同的软件或服务/etc/rc3.d
10、显示登录界面
2.2 软硬链接区别
2.2.1 创建方式
软连接 ln -s
硬链接 ln 两个文件inode号相同互为硬链接
2.2.2 区别
目录不能创建硬链接
硬链接不能跨文件相同(分区)
软连接可以跨文件相同,可以对目录创建软连接。
2.3 文件删除原理
1、inode数为0
2、进程调用数为0
三剑客之sed&grep的更多相关文章
- Linux 三剑客 -- awk sed grep
本文由本人收集整理自互联网供自己与网友参考,参考文章均已列出,如有侵权,请告知! 顶配awk,中配sed,标配grep awk 参考 sed 参考 grep 参考 在线查看linux命令速记表 app ...
- 性能工具之linux三剑客awk、grep、sed详解
前言 linux 有很多工具可以做文本处理,例如:sort, cut, split, join, paste, comm, uniq, column, rev, tac, tr, nl, pr, he ...
- Linux实战教学笔记12:linux三剑客之sed命令精讲
第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...
- (转)不看绝对后悔的Linux三剑客之sed实战精讲
不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...
- shell编程系列10--文本处理三剑客之sed利用sed查询特定内容
shell编程系列10--文本处理三剑客之sed利用sed查询特定内容 利用sed查找文件内容: pattern种类: .8p .,10p .,+5p ./regexp/p .,/regexp/p . ...
- Linux 三剑客之sed
目录 Linux 三剑客之sed 命令补充: sort命令 uniq命令 cut命令 tr命令 wc命令 三剑客 - sed 编辑模式: 定位分类: 实例如下: d模式--删除模式 p模式--打印 a ...
- 文本处理命令(sort+uniq+cut+tr+wc)+三剑客之sed
目录 文本处理命令+三剑客之sed 一.文本处理命令 1.排序命令 sort 2.检查/删除命令 uniq 3. cut 显示特定部分命令 4. 替换或删除命令 tr 5.统计 计算数字命令 wc 二 ...
- 常用文本处理命令 & 三剑客之 sed
今日内容 文本处理命令 Linux 三剑客之 sed 内容详细 文本处理命令 1.sort : 文件内容排序 默认按照文件隔行内容的第一个字符大小进行排序(默认是升序) 默认输出文本结果 sort [ ...
- 文本处理三剑客之sed命令
第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...
随机推荐
- 【0】如何在电脑中使用多个python版本【python虚拟环境配置】
问题: 该篇解决如何在同一个操作系统中可以便捷诶的使用多个python版本.有时候我们在开发的时候会同时需要python2 和python3环境,或者是需要不同的版本,都可以尽心如下配置. (1)在c ...
- DevExpress02、RibbonControl
RibbonControl 常用操作 1.如何代码显示选中的页 ribbonControl1.SelectedPage = ribbonPage2; 2.如何绑定ApplicationMenus和Po ...
- 【跨域】#001 JSONP原理解析【总结】
一.JSONP 是什么? 1.1 概念 JSONP(JSON with Padding)是资料格式 JSON 的一种“使用模式”,可以让网页从别的网域要资料.由于同源策略,一般来说位于 server1 ...
- c++ thread 使用不当导致的崩溃问题
看个例子 class CTimer{ public: // 析构函数 virtual ~CTimer(){ } // 开始 void start() { b_exit = false; i = ; t ...
- 基于easyui开发Web版Activiti流程定制器详解(二)——文件列表
上一篇我们介绍了目录结构,这篇给大家整理一个文件列表以及详细说明,方便大家查找文件. 由于设计器文件主要保存在wf/designer和js/designer目录下,所以主要针对这两个目录进行详细说明. ...
- 1925: [Sdoi2010]地精部落
1925: [Sdoi2010]地精部落 Time Limit: 10 Sec Memory Limit: 64 MB Submit: 1929 Solved: 1227 [Submit][Statu ...
- kong安装
1 哪些企业在用KONG: Mashapoe Marketplace Buzzlogix Gengo IBM Intel OpenDNS 饿了么 Kong可与两种不同的组件协同工作: Nginx:Ko ...
- Redis与高级语言内置的数据结构相比的异同及优势
相关链接: 为什么要用redis而不用map做缓存? Redis的数据结构及应用场景 Redis缓存和直接使用内存的比较 Java自带的数据结构(如HashMap,BitSet等)做缓存和NoSQL( ...
- python pyspark入门篇
一.环境介绍: 1.安装jdk 7以上 2.python 2.7.11 3.IDE pycharm 4.package: spark-1.6.0-bin-hadoop2.6.tar.gz 二.Setu ...
- 再起航,我的学习笔记之JavaScript设计模式07(抽象工厂模式)
我的学习笔记是根据我的学习情况来定期更新的,预计2-3天更新一章,主要是给大家分享一下,我所学到的知识,如果有什么错误请在评论中指点出来,我一定虚心接受,那么废话不多说开始我们今天的学习分享吧! 前两 ...