第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的更多相关文章

  1. Linux 三剑客 -- awk sed grep

    本文由本人收集整理自互联网供自己与网友参考,参考文章均已列出,如有侵权,请告知! 顶配awk,中配sed,标配grep awk 参考 sed 参考 grep 参考 在线查看linux命令速记表 app ...

  2. 性能工具之linux三剑客awk、grep、sed详解

    前言 linux 有很多工具可以做文本处理,例如:sort, cut, split, join, paste, comm, uniq, column, rev, tac, tr, nl, pr, he ...

  3. Linux实战教学笔记12:linux三剑客之sed命令精讲

    第十二节 linux三剑客之sed命令精讲 标签(空格分隔): Linux实战教学笔记-陈思齐 ---更多资料点我查看 1,前言 我们都知道,在Linux中一切皆文件,比如配置文件,日志文件,启动文件 ...

  4. (转)不看绝对后悔的Linux三剑客之sed实战精讲

    不看绝对后悔的Linux三剑客之sed实战精讲 原文:http://blog.51cto.com/hujiangtao/1923718 二.Linux三剑客之sed命令精讲 1,前言 我们都知道,在L ...

  5. shell编程系列10--文本处理三剑客之sed利用sed查询特定内容

    shell编程系列10--文本处理三剑客之sed利用sed查询特定内容 利用sed查找文件内容: pattern种类: .8p .,10p .,+5p ./regexp/p .,/regexp/p . ...

  6. Linux 三剑客之sed

    目录 Linux 三剑客之sed 命令补充: sort命令 uniq命令 cut命令 tr命令 wc命令 三剑客 - sed 编辑模式: 定位分类: 实例如下: d模式--删除模式 p模式--打印 a ...

  7. 文本处理命令(sort+uniq+cut+tr+wc)+三剑客之sed

    目录 文本处理命令+三剑客之sed 一.文本处理命令 1.排序命令 sort 2.检查/删除命令 uniq 3. cut 显示特定部分命令 4. 替换或删除命令 tr 5.统计 计算数字命令 wc 二 ...

  8. 常用文本处理命令 & 三剑客之 sed

    今日内容 文本处理命令 Linux 三剑客之 sed 内容详细 文本处理命令 1.sort : 文件内容排序 默认按照文件隔行内容的第一个字符大小进行排序(默认是升序) 默认输出文本结果 sort [ ...

  9. 文本处理三剑客之sed命令

    第十八章.文本处理三剑客之sed命令 目录 sed介绍 sed命令常用选项 sed常用编辑命令 sed使用示例 sed高级语法 18.1.sed简介 sed全名stream editor,流编辑器,s ...

随机推荐

  1. 记Git报错-Everything up-to-date

    文:铁乐与猫 今天git push 到github远程仓库的时候,出现报错"Everything up-to-date",严格来说也不算报错,它只是在告诉你,提交区所有的东西都是最 ...

  2. opengl redbook Fatal Error in XXXXXX pixel format with necessary capabilities not found

    随便运行书中的一个程序aaindex.c时出现了下面的错误:pixel format with necessary capabilities not found 解决方法: http://www.ed ...

  3. upper_bound()与lower_bound()的使用

    upper_bound()与lower_bound()的使用 c++中的许多库函数可以使我们的代码量大大减少,也可使问题简单化.很早之前就接触了upper_bound()与lower_bound(), ...

  4. java微信小程序解密AES/CBC/PKCS7Padding

    摘要:微信小程序解密建议使用1.6及以上的环境使用maven下载jar包org.bouncycastlebcprov-jdk15on1.55加密类代码importorg.bouncycastle.jc ...

  5. 用python解析word文件(一):paragraph

    太长了,我决定还是拆开三篇写.   (一)段落篇(paragraph)(本篇) (二)表格篇(table) (三)样式篇(style) 选你所需即可.下面开始正文. 最近公司的项目,需要在页面上显示w ...

  6. 1066. [SCOI2007]蜥蜴【最大流】

    Description 在一个r行c列的网格地图中有一些高度不同的石柱,一些石柱上站着一些蜥蜴,你的任务是让尽量多的蜥蜴逃 到边界外. 每行每列中相邻石柱的距离为1,蜥蜴的跳跃距离是d,即蜥蜴可以跳到 ...

  7. Google免费GPU使用教程(Google Colab Colaboratory)

    参考: https://www.234du.com/1154.html https://mp.weixin.qq.com/s/TGTToLYSQJui94-bQC4HIQ 注册gmail时遇到手机号无 ...

  8. VMware 虚拟机安装

    虚拟机下载 VMware官网地址:https://www.vmware.com/ 进行官网后,点击左边的下载图标,然后 作系统选择合适的产品,在这里以Windows系统为例,点击转至下载,如下图所示. ...

  9. pytest 失败重跑截图

    1.环境准备 /*@param: 作者:流浪的python Date:2019/01/19 env:python 3.7(由于3.0-3.5以下部分pytest可能有部分兼容问题安装建议2.7-2.9 ...

  10. c模拟银行家资源分配算法

    #include<stdio.h> #define PNUMBER 5//进程个数 #define SNUMBER 3//资源种类个数 //资源的种类,三种 char stype[SNUM ...