sed与grep练习题
第1章 练习题
第1题 取得/etc/hosts 文件的权限
如何取得/etc/hosts 文件的权限对应的数字内容,如-rw-r--r-- 为 644,要求使用命令取得644 这样的数字。
方法一 awk 指定分隔符
[root@node2 ~]# stat /etc/hosts |awk -F "[0/]" 'NR==4{print $2}'
方法二 stat -c%a
[root@node2 ~]# stat -c%a /etc/hosts
第2题 目录的硬链接数
linux 下通过 mkdir 命令创建一个新目录/clsn/ett,它的硬链接数是多少,为什么?
如果在/clsn/ett下面再创建一个目录 test。再问/clsn/ett 的硬链接数是多少?为什么。
新目录的硬链接数为2
[root@node2 ~]# mkdir /clsn/ett -p
[root@node2 ett]# ls -ldi /clsn/ett/
drwxr-xr-x. root root 12月 : /clsn/ett/
目录下的硬链接数为 2+下级目录数
[root@node2 ett]# mkdir dir01/
[root@node2 ett]# ls -ldi /clsn/ /clsn/. /clsn/ett/..
drwxr-xr-x. root root 12月 : /clsn/
drwxr-xr-x. root root 12月 : /clsn/.
drwxr-xr-x. root root 12月 : /clsn/ett/..
第3题 取出ip地址
执行命令取出 linux中 eth0 的 IP地址。
方法一 awk
[root@node2 ett]# ifconfig ens33|awk -F "[ :]+" 'NR==2{print $3}'
192.168.1.223
方法二 grep
[root@node2 ett]# ifconfig ens33|egrep "([0-9]{1,3}\.?){4}" -o |head -|tail -
192.168.1.223
内容在同一行输出
在一个命令上加什么参数可以实现下面命令的内容在同一行输出。
-n 不输出每行行尾的回车
-e 让echo支持 \n \t 转移字符系列
\n 换行
\t tab键
[root@node2 scprits]# echo -n "" ; echo "" [root@node2 scprits]# echo -n ""
[root@node2 scprits]# echo -e "123\n" [root@node2 scprits]# echo -ne "123\n"
date相关 时间同步
请给出如下格式的 date 命令 例:19-12-02。在给出实现按周输出 比如:周六输出为 6,请分别给出命令。
%F 与 %Y-%m-%d 相同
[root@node2 scprits]# date +%F
--
[root@node2 scprits]# date +%Y-%m-%d
--
时间
%H:%M:%S 与 %T相同
[root@node2 scprits]# date +%T
::
[root@node2 scprits]# date +%H:%M:%S
::
时间和周数
%w 表示周
[root@node2 scprits]# date +%F_%w
--02_1
手动设置系统日期
[root@node2 scprits]# date -s "20191202 15:55:00"
2019年 12月 02日 星期一 :: CST
自动同步系统时间
[root@node2 scprits]# ntpdate ntp1.aliyun.com
Dec :: ntpdate[]: step time server 120.25.115.20 offset -112.993154 sec
环境变量问题
当从root用户切到普通用户时,执行ifconfig会提示。
-bash: command not found.
运行目录的过程
先去PATH找
找到 运行命令解释器 shell
找不到 提示 command not found
永久修改 PATH
PATH 内容放到/etc/profile 文件最后
soucre /etc/profile 让它生效
打印三天前的日期格式
-d "-3day" 表示三天前
-d "3day" 表示三天后
[root@node2 scprits]# date +%F
--
[root@node2 scprits]# date -d "-3day" +%F
--
[root@node2 scprits]# date -d "3day" +%F
--
已知test.txt 文件内容为:
[root@node2 scprits]# cat test.txt
clsn xizi xiaochao
请问如何把文件中的空格过滤掉。
方法一 grep
[root@node2 scprits]# grep -v "^$" test.txt
clsn
xizi
xiaochao
-v 排除 ^$ (空行)
方法二 awk
[root@node2 scprits]# awk '!/^$/' test.txt
clsn
xizi
xiaochao
'!/^$/' 排除空行
方法三 sed
[root@node2 scprits]# sed '/^$/d' test.txt
clsn
xizi
xiaochao
'/^$/d' 排除空行
sed与awk
awk '找谁{干啥}'
sed '找谁干啥'
请使用 grep或 egrep 正则匹配的方式过滤文件test.txt出前两行内容
+ 表示前一个字符出现一次或一次以上。
[root@node2 scprits]# cat test.txt
clsn clssssn test
[root@node2 scprits]# egrep "c+l+s+n" test.txt
clsn
clssssn
排除以t开头的
[root@node2 scprits]# grep -iv "^t" test.txt
clsn clssssn
排除以t结尾的
[root@node2 scprits]# grep -v "t$" test.txt
clsn clssssn
请描述下列路径的内容是做什么的?
/var/log/messages 系统普通日志 /var/log/secure 用户登陆日志 /etc/fstab 开机自动挂载 /etc/profile 配置别名 环境变量 /etc/spool/cron/root 定时任务
sed与grep练习题的更多相关文章
- linux下的文本处理命令sed&awk&grep
Sedsed 是个精简的.非交互式的编辑器.他能执行和编辑vi和emacs相同的编辑任务.sed编辑器不提供交互使用方式:只能在命令行输入编辑命令.指定文件名,然后在屏幕上察看输出.sed编辑器没有破 ...
- 1.Sed | Awk | Grep | Find
1.Sed | Awk | Grep | Find 可以参考的文档链接 CentOS7 查看 当前机器 已经启动的端口的Shell命令: netstat -lntup | awk -F' ' {'pr ...
- 【转】如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等
如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等 你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或在里面搜索,或其它操作——一些无法并 ...
- awk、sed、grep更适合的方向
awk.sed.grep更适合的方向: grep 更适合单纯的查找或匹配文本 sed 更适合编辑匹配到的文本 awk 更适合格式化文本,对文本进行较复杂格式处理 关于awk内建变量个人见解,简单易懂 ...
- 【转帖】vim/sed/awk/grep等文件批处理总结
vim/sed/awk/grep等文件批处理总结 https://www.cnblogs.com/cangqiongbingchen/p/9760544.html Vim相关操作 1.基础 * 和 # ...
- sed awk grep三剑客常用
sed的常用用法: awk的常用用法: grep的常用用法: 除了列出符合行之外,并且列出后10行. grep -A 10 Exception kzfinance-front.log 除了列出符合行之 ...
- sed,grep,awk命令常用法
查看当天nginx访问日志中2016:03:25到2016:05点passport.mingxiao.com域名访问量最多的url,可以查看网站是否被刷. 法一: sed -n '/2016:03:2 ...
- <转>如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等
原文链接:http://www.vaikan.com/use-multiple-cpu-cores-with-your-linux-commands/ 你是否曾经有过要计算一个非常大的数据(几百GB) ...
- 转摘--如何利用多核CPU来加速你的Linux命令 — awk, sed, bzip2, grep, wc等
http://www.vaikan.com/use-multiple-cpu-cores-with-your-linux-commands/ 你是否曾经有过要计算一个非常大的数据(几百GB)的需求?或 ...
随机推荐
- django中对数据库生成记录操作失败
在终端执行以下语句时,会发现一点效果也没有,但是在manage.py中会成功: python3 manage.py makemigrations # 仅仅是在小本本上(migrations文件夹)记录 ...
- python将xml文件数据增强(labelimg)
在处理faster-rcnn和yolo时笔者使用labelimg标注图片 但是我们只截取了大概800张左右的图,这个量级在训练时肯定是不够的,所以我们需要使用数据增强(无非是旋转加噪调量度)来增加我们 ...
- ubuntu16.04matlab中文注释乱码的解决办法
中文注释乱码的原因是windows下的m文件采用的是gb2312编码,只要将所有的m文件转成 utf8文件,显示就正常了. 1.首先安装enca:sudo apt-get install enca 2 ...
- 调试九法: 软硬件错误的排查之道 (David J. Agans 著)
第1章 简介 (已看) 第2章 总体规则 (已看) 第3章 理解系统 (已看) 第4章 制造失败 第5章 不要想, 而要看 第6章 分而治之 第7章 一次只改一个地方 第8章 保持审计跟踪 第9章 检 ...
- MyEclipse清除所有断点的方法
今天调试网站时遇到点奇怪的问题,于是在宠大的代码段里加了N处断点,但从其它项目代码段链接代码加入断点后,关闭标签再次打开时发现断点看不到了,但运行到那段代码时依然会被中断.没有断点标记,不能手动取消怎 ...
- Note | PyTorch
目录 0. 教程和笔记 1. 模型操作 2. 网络设计 卷积图示 填充(padding) 升采样 全连接层 3. 损失函数 交叉熵 4. 系统或环境交互 模型加载 5. 犯过的错误 损失异常 测试显存 ...
- R语言- 实验报告 - 利用R语言脚本与Java相互调用
一. 实训内容 利用R语言对Java项目程序进行调用,本实验包括利用R语言对java的.java文件进行编译和执行输出. 在Java中调用R语言程序.本实验通过eclipse编写Java程序的方式,调 ...
- 【shell脚本】检查内存使用情况===chenkMen.sh
检查内存使用情况,当内存可使用等于100时,释放缓存 [root@localhost thy]# cat checkMem.sh #!/bin/bash #防止内存溢出问题 used=`free -m ...
- WIN7快速打开hosts方法
WIN7快速打开hosts方法 1直接运行C:\Windows\System32\drivers\etc\hosts 浏览选择notepad++打开即可 2打开notepad++打开 C:\Windo ...
- C++ 在线编译器(支持 C++11)
C++11 的 Inheriting constructors 特性在 GCC 4.8 以前的版本及 VS2013 中都没有支持,测试起来比较麻烦,所以搜集到了几个支持 GCC 4.8 及更高版本的在 ...