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的提示,并使该效果永久生效。

解答:

  1. 临时生效:alias别名修改rm。

    • alias rm='echo Do not use rm command.'
  2. 永久生效:配置文件~/.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题目】第二关的更多相关文章

  1. 20145233 2016-2017 1 linux题目总结

    20145233 2016-2017 1 linux题目总结 第一周考试知识汇总 判断:实验楼环境中所有的默认系统用户名和密码均为 shiyanlou.(x ). 填空:Linux Bash中,Ctr ...

  2. Python:黑板课爬虫闯关第二关

    第二关依然是非常的简单 地址:http://www.heibanke.com/lesson/crawler_ex01/ 随便输入昵称呢密码,点击提交,显示如下: 这样看来就很简单了,枚举密码循环 po ...

  3. SQL注入之Sqli-labs系列第二关

    废话不在多说  let's go!   继续挑战第二关(Error Based- Intiger) 同样的前奏,就不截图了 ,and 1=1和and 1=2进行测试,出现报错 还原sql语句 查看源代 ...

  4. (linux shell)第二章--命令之乐(一)

    文章来自于我的个人博客:(linux shell)第二章--命令之乐(一)    上一章我们描写叙述了一些linux shell中须要注意的一些语法.接下来我们開始了解linux shell的经常使用 ...

  5. Python Challenge 第二关

    第二关和第一关一样,还是一幅图和一行提示.提示说的是: recognize the characters. maybe they are in the book, but MAYBE they are ...

  6. sqli-labs第二关 详解

    学会了第一关,时隔多天来到了第二关,怎么说了没有看wp就给做出来了. 首先,我是自己先判断了下,这个是什么注入 ?id=1' 不行 ?id=1' or '1'='1--+ 也不行 然后又尝试了下 ?i ...

  7. webug第二关:从图片中你能找到什么?

    第二关:从图片中你能找到什么? 记事本打开发现提示 binwalk,发现压缩包rar

  8. 【Linux题目】第四关

    1. 如何过滤出已知当前目录下oldboy中的所有一级目录? 提示:不包含oldboy目录下面目录的子目录和隐藏目录,只要一级目录即可. 解答: ls -F|grep /   通过ls -F给目录后面 ...

  9. 【linux题目】第一关

    详细的解答:https://github.com/Zoe233/Linux/blob/master/[题目]5.Linux了解程度测试题解析.ipynb 1. 创建一个目录/data 解答: mkdi ...

随机推荐

  1. JavaScript简单使用

    本文参考廖雪峰老师网站:https://www.liaoxuefeng.com/wiki/1022910821149312 JavaScript是一种运行在浏览器中的解释型的编程语言,在Web世界里, ...

  2. MySql 存储过程分页。

    use address;drop procedure if exists `proc_s_area_code`;delimiter // #告诉mysql解释器,该段命令是否已经结束了,mysql是否 ...

  3. Tomcat5的web应用启动顺序详解

    Tomcat5的web应用启动顺序详解 [收藏此页] [打印]   作者:佚名  2007-07-17 内容导航: 第1页   [IT168技术文档]摘要: 应用Tomcat对于我们来讲实在是司空见惯 ...

  4. Property [*****] not found on type [com.erp.pojo.ErpSupplier]

    我实体类里用的是 springboot 里@Slf4j   @Data  注解式写的  这样可以减少代码量 ,但是遇到一个问题影响我好长时间 出现了这个错误  Property [*****] not ...

  5. AJ学IOS 之ipad开发qq空间项目横竖屏幕适配

    AJ分享,必须精品 一:效果图 先看效果 二:结构图 如图所示: 其中用到了UIView+extension分类 Masonry第三方框架做子控制器的适配 NYHomeViewController对应 ...

  6. 【从零单排HBase 03】深入HBase读写

    在了解HBase架构的基础上,我们需要进一步学习HBase的读写过程,一方面是了解各个组件在整个读写过程中充当的角色,另一方面只有了解HBase的真实请求过程,才能为后续的正确使用打下初步基础,毕竟, ...

  7. 大佬整理出来的干货:LDA模型实现—Python文本挖掘

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取htt ...

  8. ASE past project:interview & analysis

    采访往届ASE课程学员李潇,他所在的团队blog戳这里http://www.cnblogs.com/smart-code/ Q1:师兄你觉得在团队项目中,有哪些需要注意的事情? A1:团队合作吧.首先 ...

  9. [Abp vNext 入坑分享] - 2.简化项目结构

    一.简要说明 本篇文章根据我自己的需要对项目结果进行简化,让项目结构更符合我自己的要求,同时让项目跑起来.仅供参考 二.具体步骤 2.1卸载掉对我来说目前使用不上的项目,identityserver, ...

  10. 详解 stream流

    在本人之前的博文中,我们学习了 I/O流.NIO流的相关概念. 那么,在JDK8的更新内容中,提出了一个新的流 -- stream流 那么,现在,本人就来讲解下这个流: 目录 stream流 常用AP ...