第一关课前练习题

1.1 第一关练习题

1.1.1 创建一个目录/data

1.1.1.1 方法:mkdir 创建目录

[[email protected] ~]# mkdir /data

[[email protected] ~]# ls /

a    data  etc   lib64      mnt     proc  selinux tmp

bin  date  home  lost+found oldboy  root  srv     usr

boot dev   lib   media      opt     sbin  sys     var

[[email protected] ~]#

1.1.2 在/data 下面建立一个文件 oldboy.txt

1.1.2.1 方法:touch         创建文件

[[email protected] ~]# touch /data/oldboy.txt

[[email protected] ~]# ls /data/

oldboy.txt

[[email protected] ~]#

1.1.3 为 oldboy.txt 增加内容为“I am studying linux.”

1.1.3.1 方法1:vim  文本编辑器

[[email protected] ~]# vim /data/oldboy.txt

I am studying linux.

~

-- INSERT --

1.1.3.2 方法2:echo >            显示内容重定向到目标文件中

[[email protected] ~]# echo "I am studyinglinux." > /data/oldboy.txt

1.1.3.3 方法3:cat  >>  <<        多行追加

[[email protected] ~]# cat >> /data/oldboy.txt <<EOF

> I am studying linux.

>EOF

[[email protected] ~]#

1.1.4 把 oldboy.txt 文件拷贝到/tmp 下

1.1.4.1 方法:cp       复制目录或文件

[[email protected] ~]# cp /data/oldboy.txt /tmp

1.1.5 把/data 目录移动到/root 下

1.1.5.1 方法:mv             移动目录或文件

[[email protected] ~]# mv /data /root

[[email protected] ~]# ls /root

anaconda-ks.cfg data        install.log.syslog  test.txt

a.txt           install.log  oldboy.txt

[[email protected] ~]#

1.1.6 进入/root 目录下的 data 目录,删除 oldboy.txt 文件

1.1.6.1 方法:cd 切换目录

rm         删除文件或目录

[[email protected] ~]# cd /root/data/

[[email protected] data]# rm -f oldboy.txt         ##-f 强制删除

[[email protected] data]# ls

[[email protected] data]#

1.1.7 接第 6 题,退出到上一级目录,删除 data 目录

1.1.7.1 方法:cd

[[email protected] data]# cd ..

[[email protected] ~]# rm -rf /root/data       ## -r       删除目录

[[email protected] ~]# ls

anaconda-ks.cfg install.log         oldboy.txt

a.txt           install.log.syslog  test.txt

[[email protected] ~]#

1.1.8 请给出输出 test.txt 文件内容时,不包含 oldboy 字符串的命令

文件 test.txt 内容为: test

liyao

oldboy

先创建测试环境:

[[email protected] ~]# cat >test.txt<<eof

> test

> lidao

> oldboy

> eof

[[email protected] ~]# cat test.txt

test

lidao

oldboy

[[email protected] ~]#

1.1.8.1 方法1:grep 过滤

[[email protected] ~]# grep -v ‘oldboy‘ test.txt   ## -v   排除

test

lidao

[[email protected] ~]#

1.1.8.2 方法2:sed          用于处理文本文件

[[email protected] ~]# sed ‘/oldboy/d‘ test.txt    ## d 删除

test

lidao

[[email protected] ~]#

1.1.8.3 方法3:awk 用于处理文本文件

[[email protected] ~]# awk ‘!/oldboy/‘ test.txt       ## !在awk里面表示取反

test

lidao

[[email protected] ~]#

1.1.9 请用一条命令完成创建目录/oldboy/test,即创建/oldboy 目录及/oldboy/test 目录

1.1.9.1 方法:mkdir

[[email protected] ~]# mkdir -p /oldboy/test       ## -p,递归,多级创建目录

[[email protected] ~]#

1.1.10 复制让系统不提示是否覆盖

已知/tmp 下已经存在 test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp 下覆盖掉

/tmp/test.txt,而让系统不提示是否覆盖(root 权限下)

1.1.10.1 方法1:\            临时取消别名

[[email protected] ~]# \cp /mnt/test.txt /tmp/

[[email protected] ~]#

1.1.10.2 方法2:使用命令绝对路径

which  查看命令绝对路径

[[email protected] ~]# /bin/cp /mnt/test.txt /tmp/

[[email protected] ~]#

1.1.11 只查看 ett.txt 文件(共 100 行)内第 20 到第 30 行的内容

创建测试环境:

[[email protected] ~]# seq 100 >ett.txt        ## seq  生成数字序列

1.1.11.1 方法1:head + tail

[[email protected] ~]# head -30 ett.txt | tail -11    ##head显示前几行

20                                                    ##tail显示后几行

21

22

23

24

25

26

27

28

29

30

[[email protected] ~]#

1.1.11.2 方法2:sed

[[email protected] ~]# sed -n ‘20,30p‘ ett.txt            ##-n    取消默认输出

20

21

22

23

24

25

26

27

28

29

30

[[email protected] ~]#

1.1.11.3 方法3:awk

[[email protected] ~]# awk ‘NR==20,NR==30‘ ett.txt

20

21

22

23

24

25

26

27

28

29

30

[[email protected] ~]#

1.1.11.4 方法4:grep      (碰巧)-A  -B  -C

[[email protected] ~]# grep -A10 ‘20‘ ett.txt      ## -A10 输入20行及其之后10行

20

21

22

23

24

25

26

27

28

29

30

[[email protected] ~]#

1.1.12 把/oldboy 目录及其子目录下所有以扩展名.sh 结尾的文件中包含oldboy 的字符串全部替换为oldgirl

创建测试环境

[[email protected] ~]# mkdir -p /oldboy/test

[[email protected] ~]# cd /oldboy

[[email protected] oldboy]# echo"oldboy">test/del.sh

[[email protected] oldboy]# echo"oldboy">test.sh

[[email protected] oldboy]# echo"oldboy">t.sh

[[email protected] oldboy]# touch oldboy.txt

[[email protected] oldboy]# touch alex.txt

1.1.12.1 方法1:find +‘ | xargs‘

[[email protected] oldboy]# find /oldboy/ -type f -name"*.sh"|xargssed -i ‘s#oldboy#oldgirl#g‘

[[email protected] oldboy]# find /oldboy/ -type f-name "*.sh"|xargs cat

oldgirl

oldgirl

oldgirl

1.1.12.2 方法2:sed  $()      先执行小括号里内容,留下东西给前边的命令

[[email protected] oldboy]# sed -i ‘s#oldboy#oldgirl#g‘ $(find /oldboy/ -type f-name "*.sh")

1.1.12.3 方法3:-exec    {} \;       固定搭配,把前边内容给到‘{}‘里

[[email protected] oldboy]# find /oldboy/ -type f -name"*.sh" -execsed -i ‘s#oldboy#oldgirl#g‘ {}\;

[[email protected] oldboy]#

时间: 2024-10-10 12:37:05

第一关课前练习题的相关文章

老男孩教育-Linux运维就业班入学第一关课前测试考试题及解答

第一题 创建一个目录 /data [[email protected] ~]# mkdir /data 1.1 扩展知识1: 创建目录 ===== make directory  mkdir 1.2 扩展知识2:如果有一个相同的目录已存在了,会报以下错误提示 [[email protected] ~]# mkdir /data mkdir: cannot create directory `/data': File exists 1.3 扩展知识3:查看 显示目录下面的内容 [[email pr

linux第一关课前测试题

1.创建一个目录/data 解答: 方法一:mkdir /data 方法二:cd /; mkdir data 2.在/data下面建立一个文件oldboy.txt 解答: 方法一:cd /data/;  touch  oldboy.txt 方法二:touch /data/oldboy.txt 3.为oldboy.txt增加"I am studying linux"内容 解答: 方法一:echo "I amstudying linux" >oldboy.txt

【C语言探索之旅】 第一部分第十课:练习题+习作

内容简介 1.课程大纲 2.第一部分第十课: 练习题+习作 3.第二部分第一课预告: 模块化编程 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言编写三个游戏. C语言编程基础知识 什么是编程? 工欲善其事,必先利其器 你的第一个程序 变量的世界 运算那点事 条件表达式 循环语句 实战:第一个C语言小游戏 函数 练习题 习作:完善第一个C语言小游戏 C语言高级技术 模块化编程 进击的指针,C语言王牌 数组 字符串 预处理 创建你自己的变量类型 文件

【C语言探索之旅】 第二部分第十课:练习题和习作

内容简介 1.课程大纲 2.第二部分第十一课:  练习题和习作 3.第三部分第一课预告:  安装SDL 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言编写三个游戏. C语言编程基础知识 什么是编程? 工欲善其事,必先利其器 你的第一个程序 变量的世界 运算那点事 条件表达式 循环语句 实战:第一个C语言小游戏 函数 练习题 习作:完善第一个C语言小游戏 C语言高级技术 模块化编程 进击的指针,C语言王牌 数组 字符串 预处理 创建你自己的变量类型

老男孩教育-第2周课前测试考试题

第2章 第2周课前测试考试题 2.1 过滤一级目录 第1题如何过滤出已知当前目录下oldboy中的所有一级目录 (提示:不包含oldboy目录下面目录的子目录及隐藏目录,即只能是一级目录)? [[email protected] ~]# mkdir /oldboy/{a..b}/{c..g}/{e..f} -p 方法一 [[email protected] ~]# tree -L 1 -dfi /oldboy/ /oldboy /oldboy/a /oldboy/b 2 directories

老男孩教育-第4周课前测试考试题

第4章 第4周课前测试考试题 4.1 定时任务规则的含义01 第1题 如果在某用户的crontab文件中有以下记录,该行中的命令多久执行一次(RHCE考试题)?(  ) 30 4 * * 3 mycmd A. 每小时. B. 每周. C. 每年三月中每小时一次. 解答:每周三的4点30分,执行mycmd. 4.2 定时任务规则的含义02 第2题 如果在某用户的crontab文件中有以下记录,该行中的命令多久执行一次(RHCE考试题)?( )*/5 * * * * mycmd A. 每5分钟一次.

老男孩教育-第3周课前测试考试题

第3章 第3周课前测试考试题 3.1 取出文件的访问权限掩码 第1题 如何取得/etiantian 文件的权限对应的数字内容,如-rw-r--r-- 为 644,要求使用命令取得644 这样的数字. 思路: 1.利用cut命令切割不同的字段出来,再利用tr命令将字母逐个转化为数字,再利用awk将不同的域相加后,再输出结果 2.stat命令可以查看到文件的详细信息,再从内容里面过滤出访问权限掩码 解答: 准备练习素材: [[email protected] ~]# touch /etiantian

第一关考试及解答

老男孩教育Linux运维就业班第一关课后学习效果能力上机大考察 (每题10分共130分,过100即可,请给出详细步骤) 1.创建目录/data/oldboy,并且在该目录下创建文件oldboy.txt,然后在文件oldboy.txt里写入内容"inet addr:10.0.0.8 Bcast:10.0.0.255 Mask:255.255.255.0"(不包含引号). 解答: [[email protected] ~]# mkdir -p /data/oldboy [[email pr

正则表达式第一关之grep

很多学linux的同学和我一样,鸟哥的私房菜里每次读到正则表达式那一章,就感觉缺乏攻破它的勇气了,如果你和我一样也是刚进入linux世界的菜鸟,不妨多总结里面的基本用法以及一些特别需要注意的地方,相信你和我一样,不妨多反复揣摩,相信你也可以熟练掌握它,所谓书读百变起义自现. 刚接触的你肯定会疑问什么是正则表达式(Regular Expression),简单的讲正则表达就是处理字符串的方法,有点像word里的查找替换,不过它可比word里的查找替换强大N倍,它是以行为单位来进行字符串处理行为,通过