1. 程式人生 > >老男孩Linux-初級第36期入學前考試題解答-呂曉雪

老男孩Linux-初級第36期入學前考試題解答-呂曉雪

老男孩-36期-入學考試題總結-01


[考試試題]

1.創建一個目錄/data

解答:

[[email protected] ~]# mkdir /data
[[email protected] ~]# ls /
bin  dev   lib         media  opt   sbin     sys var
boot etc   lib64       mnt    proc  selinux  tmp xue
data  home  lost+found oldboy  root  srv     usr  xuexue

2./data下面建立一個文件oldboy.txt

解答:

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


3.oldboy.txt增加內容為I amstudying linux.

解答:

方法(1

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

I amstudying linux

-- INSERT --

:wq 保存

方法(2

[[email protected] ~]# echo ‘I am studying linux‘ >/data/oldboy.txt

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

I amstudying linux

方法(3

[[email protected] data]# cat >>oldboy.txt<<qq

> I am studying linux

> qq

[[email protected]

data]# cat oldboy.txt

I amstudying linux

4.oldboy.txt文件拷貝到/tmp

解答:

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

[[email protected] ~]# ls /tmp

oldboy.txt

5./data目錄移動到/root

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

[[email protected]~]# ls

anaconda-ks.cfg install.log.syslog nohup.out

data

6.進入/root目錄下的data目錄,刪除oldboy.txt文件

解答:

方法(1)

[[email protected] ~]# rm -f data/oldboy.txt

[[email protected] ~]# ls data

[[email protected] ~]#

方法(2

[[email protected] ~]# find data -type f -name‘oldboy.txt‘

data/oldboy.txt

[[email protected] ~]# find data -type f -name ‘oldboy.txt‘|xargs rm -f

[[email protected] ~]# ls data/

[[email protected] ~]#

方法(3

[[email protected] ~]# find data -type f -name ‘oldboy.txt‘ -exec rm {} \;

[[email protected] ~]# ls data/

[[email protected] ~]#

7.接第6題,退出到上一級目錄,刪除data目錄。

方法(1

[[email protected] ~]# cd ..

[[email protected] /]# rm -fr root/data/

[[email protected] /]# ls root

anaconda-ks.cfg install.log.syslog nohup.out test

方法(2

[[email protected] /]# find root -type d -name ‘data‘

root/data

[[email protected] /]# find root -type d -name ‘data‘|xargs rm -fr

[[email protected] /]# ls root

anaconda-ks.cfg install.log.syslog nohup.out test

8.已知文件 test.txt 內容為:

test

liyao

oldboy

請給出輸出 test.txt文件內容時,不包含oldboy 字符串的命令。

解答:

模擬環境

[[email protected] data]# cat>>test.txt<<qq

> test

> liyao

> oldboy

> qq

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

test

liyao

oldboy

方法(1

[[email protected] data]# grep -v oldboy test.txt

test

liyao

方法(2

[[email protected] data]# sed ‘/oldboy/d‘ test.txt

test

liyao

9.請用一條命令完成創建目錄/oldboy/test,即創建/oldboy目錄及/oldboy/test目錄

解答:

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

[[email protected] data]# ls

oldboy

[[email protected] data]# ls oldboy/

test

10.已知/tmp 下已經存在 test.txt 文件,如何執行命令才能把/mnt/test.txt 拷貝到/tmp 下覆蓋掉 /tmp/test.txt,而讓系統不提示是否覆蓋(root 權限下)。

解答:

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

cp:是否覆蓋"/tmp/test.txt"? ^C

方法(1

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

方法(2

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

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

解答:

模擬環境:

[[email protected] data]# seq 100 >ett.txt

[[email protected] data]# cat ett.txt

1

......

100

方法(1

[[email protected] data]# sed -n ‘20,30‘p ett.txt

20

......

30

方法(2

[[email protected] data]# grep 20 -A 10 ett.txt

20

.....

30

方法 (3)

[[email protected] data]# grep 30 -B 10 ett.txt

20

......

30

方法(4

[[email protected] data]# grep 25 -C 5 ett.txt

20

......

30

方法(5

[[email protected] data]# awk ‘NR>19&&NR<31‘ ett.txt

方法(6非自己

[[email protected] data]# awk ‘{if(NR<31 && NR>19) printf$0"\n"}‘ ett.txt

20

......

30

方法(7

[[email protected] data]# head -30 ett.txt | tail -11

20

......

30

13、把/oldboy目錄及其子目錄下所有以擴展名.sh結尾的文件中包含./hostlists.txt的字符串全部替換為../idctest_iplist。【附加題:加分題,不會的同學可以放棄不答】。

解答:

模擬環境:

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

[[email protected] ~]# cd oldboy

[[email protected] oldboy]# echo ‘./hostlists.txt‘>a.sh

[[email protected] oldboy]# echo ‘./hostlists.txt‘>b.sh

[[email protected] oldboy]# echo ‘./hostlists.txt‘>c.sh

[[email protected] oldboy]# echo ‘./hostlists.txt‘>e.txt

[[email protected] oldboy]# echo ‘./hostlists.txt‘>f.txt

[[email protected] oldboy]# cd oldgil/

[[email protected] oldgil]# echo ‘./hostlists.txt‘>g.txt

[[email protected] oldgil]# echo ‘./hostlists.txt‘>h.sh

[[email protected] oldgil]# echo ‘./hostlists.txt‘>j.sh

[[email protected] oldgil]# find -type f -name‘*.sh‘|xargs cat

./hostlists.txt

./hostlists.txt

[[email protected] oldgil]# cd ..

[[email protected] oldboy]# tree

.

├── a.sh

├── b.sh

├── c.sh

├── e.txt

├── f.txt

└── oldgil

├── g.txt

├── h.sh

└── j.sh

方法:

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

./hostlists.txt

./hostlists.txt

./hostlists.txt

./hostlists.txt

./hostlists.txt

[[email protected]]# find -type f-name ‘*.sh‘|xargs sed ‘s#./hostlists.txt#../idctest_iplist#g‘

oldboy

./hostlists.ext

./hostlists.ext

./hostlists.ext

./hostlists.ext

../idctest_iplist

../idctest_iplist

../idctest_iplist

../idctest_iplist

../idctest_iplist

[[email protected] ~]# find -type f -name ‘*.sh‘|xargs sed -i ‘s#./hostlists.txt#../idctest_iplist#g‘

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

../idctest_iplist

../idctest_iplist

../idctest_iplist

../idctest_iplist

../idctest_iplist


老男孩Linux-初級第36期入學前考試題解答-呂曉雪