24.centos7基础学习与积累-010-上机考核命令练习
从头开始积累centos7系统运用
大牛博客:https://blog.51cto.com/yangrong/p5
1.创建目录/data/oldboy,并且在该目录下创建文件oldboy.txt,然后在文件lodboy.txt里写入内容
“inet addr:10.0.0.8” Bcast:10.0.0.255 Mask:255.255.255.0"(不包括引号)。
[root@python01 ~]# mkdir /data/oldboy -p
用sed过滤行
[root@python01 ~]# ip a|sed -n '9p'
inet 192.168.50.200/24 brd 192.168.50.255 scope global eth0
用grep过滤指定字符
[root@python01 ~]# ip a|grep 192
inet 192.168.50.200/24 brd 192.168.50.255 scope global eth0
[root@python01 ~]# ip a|grep 192 >/data/oldboy/oldboy.txt
[root@python01 ~]# cat /data/oldboy/oldboy.txt
inet 192.168.50.200/24 brd 192.168.50.255 scope global eth0
2.讲题1中的oldboy.txt文件内容通过命令过滤只输出如下内容:
10.0.0.8 10.0.0.255 255.255.255.0
多个分隔符用中括号括起来
[root@python01 ~]# awk -F "[ :]+" '{print $1$3}' /data/oldboy/oldboy.txt
正确答案:当只有一个分隔符时
[root@python01 ~]# awk -F " " '{print $2" "$4}' /data/oldboy/oldboy.txt
192.168.50.200/24 192.168.50.255
3.将题1的oldboy目录移动到/tmp目录下,并将/etc/passwd文件复制到/tmp/oldboy下。
[root@python01 ~]# mv /data/oldboy /tmp/
[root@python01 ~]# ls /tmp/oldboy/
oldboy.txt
[root@python01 ~]# cp /etc/passwd /tmp/oldboy/
[root@python01 ~]# ls /tmp/oldboy/
oldboy.txt passwd
4.在题3的基础上使用awk取passwd文件的地10行到20行的第三列重定向到/tmp/oldboy/test.txt 文件里面。
[root@python01 oldboy]# awk '9<NR && NR<21{print }' passwd |cat -n
1 operator:x:11:0:operator:/root:/sbin/nologin
2 games:x:12:100:games:/usr/games:/sbin/nologin
3 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
4 nobody:x:99:99:Nobody:/:/sbin/nologin
5 systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
6 dbus:x:81:81:System message bus:/:/sbin/nologin
7 polkitd:x:999:998:User for polkitd:/:/sbin/nologin
8 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
9 postfix:x:89:89::/var/spool/postfix:/sbin/nologin
10 chrony:x:998:996::/var/lib/chrony:/sbin/nologin
11 ntp:x:38:38::/etc/ntp:/sbin/nologin
[root@python01 oldboy]# awk -F ":" '{if(9<NR && NR<21)print $3}' passwd
11
12
14
99
192
81
999
74
89
998
38
[root@python01 oldboy]# awk -F ":" '9<NR && NR<21{print $3}' passwd
11
12
14
99
192
81
999
74
89
998
38
[root@python01 oldboy]# awk -F ":" '9<NR && NR<21{print $3}' passwd >test.txt
[root@python01 oldboy]# ls
oldboy.txt passwd test.txt
[root@python01 oldboy]# cat test.txt
11
12
14
99
192
81
999
74
89
998
38
5.在题3的基础上要求用命令rm删除文件时提示如下禁止使用rm的提示,并是该效果永久生效。
[root@python01 oldboy]# rm -f passwd
Do not use rm command
别名临时生效:
[root@python01 oldboy]# alias rm='echo Do not use rm command.'
[root@python01 oldboy]# rm passwd
Do not use rm command. passwd
别名永久生效:
[root@python01 oldboy]# ls /etc/profile /etc/bashrc
/etc/bashrc /etc/profile
追加到属性文件:
[root@python01 oldboy]# echo "alias rm='echo Do not use rm command.'" >> /etc/bashrc
[root@python01 oldboy]# echo "alias rm='echo Do not use rm command.'" >> /etc/profile
6.在题3的基础上,删除/tmp/oldboy/下除passwd以外的其他文件。
取正
[root@python01 oldboy]# find /tmp/oldboy/ -type f -name "*.txt"
取反
[root@python01 oldboy]# find /tmp/oldboy/ -type f ! -name "passwd"
删除查找到的文件\目的是屏蔽别名
[root@python01 oldboy]# find /tmp/oldboy/ -type f ! -name "passwd"|xargs \rm -f
7.在题3的基础上,请打印/etc/passwd 文件中的第2-5行(不低于三种方法)
[root@python01 oldboy]# sed -n '2,5'p /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
[root@python01 oldboy]# awk '1<NR && NR<6' /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
[root@python01 oldboy]# head -5 /etc/passwd|tail -4
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
8.在题3的基础上,使用命令调换passwd文件里root位置和/bin/bash位置?即将所有的第一列和最后一列位置调换?
例:
root:x:0:0:root:/root:/bin/bash
/bin/bash:x:0:0:root:/root:root
[root@python01 oldboy]# awk -F ":" 'NR==1{print $7":"$2":"$3":"$4":"$5":"$6":"$1}' /etc/passwd
/bin/bash:x:0:0:root:/root:root
[root@python01 oldboy]# awk 'NR==1{print $0}' /etc/passwd
root:x:0:0:root:/root:/bin/bash
[root@python01 oldboy]# awk -F ":" '{print $7":"$2":"$3":"$4":"$5":"$6":"$1}' /etc/passwd
[root@python01 oldboy]# sed ir 's#(.*):x(.*)#\3\2\1#g' /tmp/oldboy/passwd
9.把/data目录及其子目录下所有以拓展名.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy.
结果是一样的: -n 1是表示分组有区别的
[root@python01 oldboy]# find /data -type f -name "*.txt" |xargs cat
[root@python01 oldboy]# find /data -type f -name "*.txt" |xargs -n 1 cat
[root@python01 oldboy]# echo "oldgir1" >/data/{1..99}.txt
-bash: /data/{1..99}.txt: ambiguous redirect
[root@python01 oldboy]# echo "oldgir1" >/data/1.txt
[root@python01 oldboy]# echo "oldgir1" >/data/2.txt
[root@python01 oldboy]# echo "oldgir1" >/data/3.txt
[root@python01 oldboy]# echo "oldgir1" >/data/4.txt
[root@python01 oldboy]# echo "oldgir1" >/data/5.txt
[root@python01 oldboy]# echo "oldgir1" >/data/6.txt
[root@python01 oldboy]# echo "oldgir1" >/data/7.txt
[root@python01 oldboy]# echo "oldgir1" >/data/8.txt
[root@python01 oldboy]# echo "oldgir1" >/data/9.txt
[root@python01 oldboy]# echo "oldgir1" >/data/10.txt
[root@python01 oldboy]# echo "oldgir1" >/data/11.txt
[root@python01 oldboy]# echo "oldgir1" >/data/12.txt
[root@python01 oldboy]# echo "oldgir1" >/data/13.txt
[root@python01 oldboy]# echo "oldgir1" >/data/14.txt
[root@python01 oldboy]# echo "oldgir1" >/data/15.txt
[root@python01 oldboy]# echo "oldgir1" >/data/16.txt
[root@python01 oldboy]# echo "oldgir1" >/data/17.txt
将文件中的内容替换成要求的
[root@python01 oldboy]# find /data -type f -name "*.txt" |xargs sed -i 's#oldgir#oldboy#g'
最近8条命令的截取
history |cut -c 8-
10.查找/oldboy下所有七天以前的以log结尾的大于1M的文件移动到/emp目录下。
[root@python01 oldboy]# mkdir -p /data/oldboy
[root@python01 oldboy]# pwd
/data/oldboy
制造大文件执行10次下面的命令
[root@python01 oldboy]# cat /var/log/dmesg >>123.log
[root@python01 oldboy]# cat /var/log/dmesg >>456.log
将系统日期往后推9天,今天是20190709,就可以查看7天以前的文件了
[root@python01 oldboy]# date -s 20190718
[root@python01 oldboy]# stat 123.log
[root@python01 oldboy]# find /data/oldboy/ -type f -name "*.log" -size +1M -mtime +7
/data/oldboy/123.log
/data/oldboy/456.log
后面的 \;是exec的固定参数
[root@python01 oldboy]# find /data/oldboy/ -type f -name "*.log" -size +1M -mtime +7 -exec mv {} /tmp \;
[root@python01 oldboy]# mv `find /data/oldboy/ -type f -name "*.log" -size +1M -mtime +7` /tmp
[root@python01 oldboy]# find /data/oldboy/ -type f -name "*.log" -size +1M -mtime +7 |xargs -i mv {} /tmp
博客参考:https://blog.51cto.com/oldboy/1750481
[root@python01 oldboy]# find /data/oldboy/ -type f -name "*.log" -size +1M -mtime +7 -exec cp {} /tmp \;
此处用xargs不行:删除时可以用xargs
[root@python01 oldboy]# find /tmp -type f -name "*.log" -size +1M -mtime +7 |xargs \rm
11.什么是linux的运行级别,请描述linux的运行级别不同数字的含义?
7已经没有那么多运行级别了。
[root@python01 oldboy]# cat /etc/inittab
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
# systemctl set-default TARGET.target
7.里面默认的是 3
6.里面的运行级别:
0 halt
1 Single user mode
2 Multiuser,wittout NFS
3 Full multiuser mode
4 unused
5 X11
6 reboot
12.请描述buffer 和 cache的区别?
写入到内存的缓存叫buffer
从硬盘读取到内存的叫cache
13.请说出你知道的下列字符在linux里可以代表的意义。
~ root家目录
[root@python01 oldboy]# cd ~
[root@python01 ~]# ls
anaconda-ks.cfg epel-release-latest-7.noarch.rpm test
` 上一次所在的目录
[root@python01 ~]# cd -
/data/oldboy
. 当前目录
.. 上一级目录
| 管道符
[root@python01 oldboy]# ip addr|sed -n '9p'
inet 192.168.50.200/24 brd 192.168.50.255 scope global eth0
> 输入重定向
[root@python01 oldboy]# seq 10 >abc.txt
[root@python01 oldboy]# cat abc.txt
1
2
3
4
5
6
7
8
9
10
>> 追加输入重定向
< 输出重定向
[root@python01 oldboy]# xargs -n 3 <abc.txt
1 2 3
4 5 6
7 8 9
10
<< 追加输出重定向
[root@python01 oldboy]# cat >>abc.txt <<EOF
> DFJSAKLFDJ
> DFJKSLAJF
> FJDSKLAFJ
> EOF
24.centos7基础学习与积累-010-上机考核命令练习的更多相关文章
- 26.centos7基础学习与积累-012-文件和目录的属性
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.文件的属性(文件的信息描述): [root@python01 ~]# ls -l ...
- 20.centos7基础学习与积累-006-软实力-画图
从头开始积累centos7系统运用 亿图是用指南 安装亿图软件 修改基础配置 路径:文件==>选项==>常规 需要修改的参数: 撤销次数:256 自动保存间隔:2分钟 路径:文件==> ...
- 17.centos7基础学习与积累-003-命令练习01
1.从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 linux命令的学习: 创建目录:mkdir mkdir /data mkdir ...
- 15.centos7基础学习与积累-001
1.从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 做到精通这个操作系统, 互联网常用服务器品牌: dell: 4u ...
- 27.centos7基础学习与积累-013-文件和目录的权限
从头开始积累centos7系统运用 大牛博客: https://blog.51cto.com/yangrong/p5 https://blog.oldboyedu.com/ 文件的权限 rw-r--r ...
- 25.centos7基础学习与积累-011-课前考试二-命令练习
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 取IP地址: 6的命令:ifconfig eth0 7的命令 [root@pytho ...
- 23.centos7基础学习与积累-009-linux目录
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 linux目录的特点: 1. /是所有目录的顶点. 2. 目录结构像一颗倒挂的树. ...
- 22.centos7基础学习与积累-008-系统调优及安全设置
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.关闭selinux功能: SELinux(Securety-EnhancedLi ...
- 19.centos7基础学习与积累-005-命令总结01
从头开始积累centos7系统运用 大牛博客:https://blog.51cto.com/yangrong/p5 1.查看命令帮助的方法: --help 适用于一般命令,非内置命令 man 适用于 ...
随机推荐
- phpspreadsheet 中文文档(一) 访问单元格
2019年10月11日11:45:09 访问单元格 访问电子表格中的单元格应该非常简单.本主题列出了一些访问单元的选项. 通过坐标设置单元格值 可以使用工作表的setCellValue()方法来按坐标 ...
- phpspreadsheet 中文文档 粗翻版
2019年10月11日09:32:33 官方使用文档 https://phpspreadsheet.readthedocs.io/en/stable/topics/accessing-cells/ ...
- 破解FTP登录密码的几种方法
工具 Hydra X-Hydra Medusa Ncrack Patator Metasploit Hydra hydra -L /root/Desktop/user.txt -P /root/Des ...
- Quartz学习笔记:集群部署&高可用
Quartz学习笔记:集群部署&高可用 集群部署 一个Quartz集群中的每个节点是一个独立的Quartz应用,它又管理着其他的节点.这就意味着你必须对每个节点分别启动或停止.Quartz集群 ...
- 图片懒加载--lazyload.js的用法
这几天公司的项目已经完成的差不多了,只剩下各种优化问题.今天着重于图片加载的优化.当一个页面需要下拉很长而且又有过多的图片要加载时,就会发生很多http请求,就会拉慢网页加载速度,用户体验不友好.怎么 ...
- c++11多线程记录6:条件变量(condition variables)
https://www.youtube.com/watch?v=13dFggo4t_I视频地址 实例1 考虑这样一个场景:存在一个全局队列deque,线程A向deque中推入数据(写),线程B从deq ...
- Django框架之第三篇(路由层)--有名/无名分组、反向解析、路由分发、名称空间、伪静态
一.Django请求生命周期 二.路由层 urls.py url()方法 第一个参数其实就是一个正则表达式,一旦前面的正则匹配到了内容,就不会再往下继续匹配,而是直接执行对应的视图函数. djang ...
- golang基础学习---log
package main import ( "log" ) func init() { log.SetPrefix("TRACE: ") log.SetFlag ...
- SpringDataRedis
一.简介 1.SpringData和Redis Redis将数据存储到内存的,速度快.可以解决请求mysql数据库过多而导致mysql崩溃的问题. SpringData是专门用来控制Redis的工具, ...
- P2801 教主的魔法 (线段树)
题目 P2801 教主的魔法 解析 成天做水题 线段树,第一问区间加很简单 第二问可以维护一个区间最大值和一个区间最小值,若C小于等于区间最小值,就加上区间长度,若C大于区间最大值,就加0 ps:求教 ...