【linux题目】第二关
1、创建目录/data/oldboy,并且在该目录下创建文件oldboy.txt,然后在文件oldboy.txt里写入内容”inet addr:10.0.0.8 Bcast:10.0.0.255 Mask:255.255.255.0”(不包含引号)。
解答:
[root@oldboy /]# mkdir /data/oldboy -p
[root@oldboy /]# cd /data/oldboy
[root@oldboy oldboy]# touch oldboy.txt
[root@oldboy oldboy]# echo "inet addr:10.0.0.8 Bcast:10.0.0.255 Mask:255.255.255.0" > oldboy.txt
[root@oldboy oldboy]# cat oldboy.txt
inet addr:10.0.0.8 Bcast:10.0.0.255 Mask:255.255.255.0
2、将题1中的oldboy.txt文件内容通过命令过滤只输出如下内容:
10.0.0.8 10.0.0.255 255.255.255.0
解答:
方法1:用awk字段分隔符划分
[root@oldboy oldboy]# awk -F "[: ]+" '{print $3,$5,$7 }' oldboy.txt
10.0.0.8 10.0.0.255 255.255.255.0 方法2:用sed命令替换全部英文和冒号
[root@oldboy oldboy]# sed 's#[a-zA-Z:]##g' oldboy.txt
10.0.0.8 10.0.0.255 255.255.255.0
方法3:用反向保留ip地址,去除其它
[root@oldboy oldboy]# sed -nr 's#^.*dr:([0-9.]+).*t:([0-9.]+).*:([0-9.]+)$#\1 \2 \3#gp' oldboy.txt
10.0.0.8 10.0.0.255 255.255.255.0
3、将题1中的oldboy目录移动到/tmp目录下,并将/etc/passwd文件复制到/tmp/oldboy下。
解答:
[root@oldboy oldboy]# mv /data/oldboy /tmp/
[root@oldboy oldboy]# cp /etc/passwd /tmp/oldboy/
4、在题3的基础上使用awk取passwd文件的第10行到20行的第三列重定向到/tmp/oldboy/test.txt文件里。
[root@oldboy oldboy]# awk 'NR==10,NR==20 {print}' passwd|cut -d ":" -f 3 >> /tmp/oldboy/test.txt
[root@oldboy oldboy]# cat test.txt
10
11
12
13
14
99
81
69
173
68
38
5、在题3的基础上要求用命令rm删除文件时提示如下禁止使用rm的提示,并使该效果永久生效。
解答:
- 临时生效:alias别名修改rm。
- alias rm='echo Do not use rm command.'
- 永久生效:配置文件~/.bashrc, ~/.bashrc_prfile等文件永久修改。
[root@oldboy ~]# cat .bashrc
# .bashrc # User specific aliases and functions alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias grep='grep --color=auto'
alias ll='ls -l'
alias rm='Do not use rm command!'
alias net='cat /etc/sysconfig/network-scripts/ifcfg-eth3' # Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi定义别名永久生效:
- /etc/profile 全局生效
/etc/bashrc 全局生效
~/.bashrc 当前用户生效
- ~/.bashrc_profile 当前用户生效
6、在题3的基础上,删除/tmp/oldboy/下移除passwd以外的其他文件。
解答:find /tmp/oldboy -type f ! -name passwd -exec rm {} \;
7、在题3的基础上,请打印/etc/passwd文件中的第2-5行(不低于三种方法)
解答:
方法1: head -5 /etc/passwd|tail -4
方法2: sed -n '2,5p' /etc/passwd
方法3: awk 'NR==2,NR==5 {print }' /etc/passwd
8、在题3的基础上,使用命令调换passwd文件root位置和/bin/bash位置?即将所有的第一列和最后一列位置调换?
解答:
方法1: sed替换,后向引用
[root@oldboy oldboy]# sed -n '1p' passwd
root:x:0:0:root:/root:/bin/bash
[root@oldboy oldboy]# sed -nr '1s#(.*):x(.*):(.*)#\3:x\2:\1#gp' passwd
/bin/bash:x:0:0:root:/root:root 方法2: awk分隔符
awk -F ":" '{print $7":"$2":"$3":"$4":"$5":"$6":"$1}' passwd
9、把/data目录及其子目录下所有以扩展名.txt结尾的文件中包含oldgirl的字符串全部替换为oldboy。
解答:
find /data -type f -name "*.txt"|xargs sed -i 's#oldgirl#oldboy#g'
10、查找/oldboy下所有七天以前以log结尾的大于1M的文件移动/tmp下。
解答:
- find /oldboy -type f -name "*.log" -size +1M -mtime +7 -exec mv {} /tmp/ \;
- find /oldboy -type f -name ".log" -size +1M -mtime +7 |xargs -I {} mv {} /tmp/
- mv $(find . -name "*.log" -size +1M -atime +7) /tmp/
- mv `find . -name "*.log" -size +1M -atime +7` /tmp/
11、什么是Linux的运行级别,请描述Linux的运行级别不同数字的含义?(附加题)
解答:
- 0 关机
- 1 单用户命令行模式
- 2 无网络的多用户
- 3 正常的文本模式下的多用户
- 4 unused
- 5 桌面系统模式
- 6 重启
[root@zoe oldboy]# cat /etc/inittab
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(5), init(8), and initctl(8).
#
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:
12、请描述buffer和cache的区别?(附加题)
解答:
缓冲和缓存
- 写入数据到内存里,这个数据的内存空间称为缓冲区(buffer)。
- 从内存读取数据,这个数据的内存空间称为缓存区(cache)。
13、请说出你知道的下列字符在Linux里可以代表的意义。(附加题)
~ - . .. | > >> < << !
解答:
- ~ 家目录
- - 上一次所在的目录
- . 当前目录; 单个任意字符
- .. 上一级目录
- | 管道
- > 标准正确输出
- >> 追加标准正确输出
- < 标准输入
- << 追加标准输入
- !
- !! 上一条命令
- !数字 history命令排行的数字的命令
- ! -name "aa.txt" 取反
- !c 表示调出最近一次以c开头的命令
【linux题目】第二关的更多相关文章
- 20145233 2016-2017 1 linux题目总结
20145233 2016-2017 1 linux题目总结 第一周考试知识汇总 判断:实验楼环境中所有的默认系统用户名和密码均为 shiyanlou.(x ). 填空:Linux Bash中,Ctr ...
- Python:黑板课爬虫闯关第二关
第二关依然是非常的简单 地址:http://www.heibanke.com/lesson/crawler_ex01/ 随便输入昵称呢密码,点击提交,显示如下: 这样看来就很简单了,枚举密码循环 po ...
- SQL注入之Sqli-labs系列第二关
废话不在多说 let's go! 继续挑战第二关(Error Based- Intiger) 同样的前奏,就不截图了 ,and 1=1和and 1=2进行测试,出现报错 还原sql语句 查看源代 ...
- (linux shell)第二章--命令之乐(一)
文章来自于我的个人博客:(linux shell)第二章--命令之乐(一) 上一章我们描写叙述了一些linux shell中须要注意的一些语法.接下来我们開始了解linux shell的经常使用 ...
- Python Challenge 第二关
第二关和第一关一样,还是一幅图和一行提示.提示说的是: recognize the characters. maybe they are in the book, but MAYBE they are ...
- sqli-labs第二关 详解
学会了第一关,时隔多天来到了第二关,怎么说了没有看wp就给做出来了. 首先,我是自己先判断了下,这个是什么注入 ?id=1' 不行 ?id=1' or '1'='1--+ 也不行 然后又尝试了下 ?i ...
- webug第二关:从图片中你能找到什么?
第二关:从图片中你能找到什么? 记事本打开发现提示 binwalk,发现压缩包rar
- 【Linux题目】第四关
1. 如何过滤出已知当前目录下oldboy中的所有一级目录? 提示:不包含oldboy目录下面目录的子目录和隐藏目录,只要一级目录即可. 解答: ls -F|grep / 通过ls -F给目录后面 ...
- 【linux题目】第一关
详细的解答:https://github.com/Zoe233/Linux/blob/master/[题目]5.Linux了解程度测试题解析.ipynb 1. 创建一个目录/data 解答: mkdi ...
随机推荐
- block 的内存结构衍生出来的面试题
今天在群里看到大佬们在讨论一个面试题,问如下代码在 32bit 和 64bit 系统上分别报什么错误: #import <Foundation/Foundation.h> int main ...
- Gang Of Four的23中设计模式
Gang Of Four的23中设计模式 标签(空格分隔): 设计模式 1. 根据目的来进行划分 根据目的进行划分可以分为创建型模式, 结构型模式和行为模式三种. 1.1 创建型模式 怎样创建对象, ...
- ArrayList 迭代器学习笔记
我们先来看一段代码: List<String> list = new ArrayList<>(); list.add("str1"); list.add(& ...
- 编译安装inotify-tools和监控inotifywait事件
编译安装inotify-tools软件包 1)解包inotify-tools-3.13.tar.gz文件 [root@svr7~]#ls inotify-tools- ...
- 【Linux】Linux(一)Linux常用命令
一 命令行提示符 1.[root@localhost ~]# 当前登录用户@主机名:当前所在目录$ # 超级用户 $ 普通用户 当前所在目录:~ 用户家目录 管理员 /root 普通用户 /home ...
- 汇编刷题:显示ABCDEFGH 八个字母
DATA SEGMENT DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV CX,8 MOV ...
- Java Random 随机数
package myrandom; import java.util.Random; /* * Random:用于产生随机数 * * 使用步骤: * A:导包 * import java.util.R ...
- 面试问了解Linux内存管理吗?10张图给你安排的明明白白!
文章每周持续更新,各位的「三连」是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 今天来带大家研究一下Linux内存管理.对于精通 CURD 的业务同学 ...
- 官方解读:Salesforce线上考试新政与福利
随着疫情在世界范围内的迅速蔓延,Salesforce推出了一系列的线上认证考试改进方案,方便Salesforce从业者在疫情阶段也能够安全.便利地参与考试,今天让我们一起来捋一捋那些,和我们密切相关的 ...
- 抠脚大叔如何改变性别,Python实现变声器功能
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 乔柯 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...