1. 程式人生 > >linux第二關練習題

linux第二關練習題

文件 tar命令 val rac 否則 get ada 菜單 jea

第1章 PATH

1.1 PATH 存放的是linux下命令的路徑(位置)

[root@oldboyedu50-lnb ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

1.2 linux啟動過程

開機自檢(BIOS

MBR引導

GRUB菜單

加載內核

運行init進程

讀取/etc/inittab配置文件

執行/etc/rc.d/rc.sysinit腳本

執行/etc/rc.d/rc腳本

啟動mingetty進程

1.3 linux執行命令過程

1.是否是別名

2.PATH中找命令是否存在

1).提示

command not found

2).執行

實例1-1 如何過濾出已知當前目錄下oldboy中的所有一級目錄(提示:不包含oldboy目錄下面目錄的子目錄及隱藏目錄,即只能是第一級目錄)

mkdir /oldboy -p

cd /oldboy

mkdir ext/oldboy test xiaodong xiaofan xingfujie -p

touch jeacen oldboy wodi.gz yingsui.gz

方法1-tree

[root@oldboyedu50-lnb /oldboy]# tree -dL 1

.

├── ext

├── test

├── xiaodong

├── xiaofan

└── xingfujie

5 directories

方法2-find

[root@oldboyedu50-lnb /oldboy]# find -maxdepth 1 -type d

.

./xiaodong

./xiaofan

./test

./ext

./xingfujie

[root@oldboyedu50-lnb /oldboy]# find -maxdepth 1 -type d -name "."

.

[root@oldboyedu50-lnb /oldboy]# find -maxdepth 1 -type d ! -name "."

./xiaodong

./xiaofan

./test

./ext

./xingfujie

方法3 d開頭的

[root@oldboyedu50-lnb /oldboy]# ll |grep "^d"

drwxr-xr-x 3 root root 4096 Jul 19 23:59 ext

drwxr-xr-x. 2 root root 4096 Jul 16 19:24 test

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xiaodong

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xiaofan

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xingfujie

方法4 第2列大於1

[root@oldboyedu50-lnb /oldboy]# ll |awk '$2>1'

total 40

drwxr-xr-x 3 root root 4096 Jul 19 23:59 ext

drwxr-xr-x. 2 root root 4096 Jul 16 19:24 test

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xiaodong

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xiaofan

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xingfujie

方法5 ls

[root@oldboyedu50-lnb /oldboy]# ls -F

alex.txt jeacen oldboy.txt test.sh t.sh.bak xiaodong/ xingfujie/

ext/ oldboy test/ t.sh wodi.gz xiaofan/ yingsui.gz

[root@oldboyedu50-lnb /oldboy]# #-F 不同類型的文件 加上不同的標記 目錄/

[root@oldboyedu50-lnb /oldboy]# ls -F |grep "/"

ext/

test/

xiaodong/

xiaofan/

xingfujie/

方法6 *目錄標記

[root@oldboyedu50-lnb /oldboy]# ls -ld */

drwxr-xr-x 3 root root 4096 Jul 19 23:59 ext/

drwxr-xr-x. 2 root root 4096 Jul 16 19:24 test/

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xiaodong/

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xiaofan/

drwxr-xr-x 2 root root 4096 Jul 19 23:59 xingfujie/

實例1-2 /etc/目錄為linux系統的默認的配置文件及服務啟動命令的目錄

a. 請用tar打包/etc整個目錄(打包及壓縮)。

b. 請用tar打包/etc整個目錄(打包及壓縮,但需要排除/etc/services文件)。

c. 請把a點命令的壓縮包,解壓到/tmp指定目錄下(最好只用tar命令實現)。

1.創建壓縮包

tar zcvf /tmp/etc.tar.gz /etc/

#z gzip 通過gzip 軟件壓縮

#c create 創建包

#v verbose 顯示過程

#f file 指定文件

2.查看壓縮包內容

tar ztf /tmp/etc.tar.gz

#t list 顯示壓縮包內容

3.解壓

tar zxf etc.tar.gz

#x extract 解壓

[root@oldboyedu50-lnb /tmp]# ll /tmp/etc.tar.gz

-rw-r--r-- 1 root root 9734648 Jul 20 01:41 /tmp/etc.tar.gz

解壓到/opt

[root@oldboyedu50-lnb /tmp]# tar xf /tmp/etc.tar.gz -C /opt/

[root@oldboyedu50-lnb /tmp]# ll /opt/

total 12

drwxr-xr-x. 2 root root 4096 Jul 11 01:16 data

drwxr-xr-x 78 root root 4096 Jul 19 20:43 etc

drwxr-xr-x. 2 root root 4096 Mar 26 2015 rh

b.請用tar打包/etc整個目錄(打包及壓縮,但需要排除/etc/services文件)。

[root@oldboyedu50-lnb /tmp]# tar zcf /tmp/etc-pai.tar.gz /etc/ --exclude /etc/services

tar: Removing leading `/' from member names

[root@oldboyedu50-lnb /tmp]# tar tf /tmp/etc-pai.tar.gz |grep services

etc/init/readahead-disable-services.conf

[root@oldboyedu50-lnb /tmp]# tar tf /tmp/etc.tar.gz |grep services

etc/init/readahead-disable-services.conf

etc/services

tar zcf /tmp/etc-pai.tar.gz /etc/ --exclude /etc/services

tar命令經典故障

Removing leading `/' from member names

[root@oldboyedu50-lnb /oldboy]# tar zcf /tmp/etc.tar.gz /etc/

tar: Removing leading `/' from member names

把壓縮包中的開頭的/(根)刪除掉

背後過程:

打包壓縮過程中 文件或目錄 絕對路徑---->相對路徑

打包的時候:

/etc/host

/etc/profile

壓縮包中樣子

etc/host

etc/profile

這個提示原因: 防止解壓的時候覆蓋源文件。

實例1-3 假如當前目錄是/etc/sysconfig/network-scripts/

cd - 進入到上一次所在的位置

An argument of - is equivalent to $OLDPWD.

cd - === cd $OLDPWD

cd . 進入當前目錄

cd .. 進入上一級目錄

cd ~ 進入當前目錄的家目錄

實例1-4 按照時間順序查看文件

ls -lrt

#-r 逆序

#-t 按照修改時間

調試系統服務時,希望能實時查看系統日誌/var/log/secure的更新,如何做?

-F == -f --try 如果文件不存在 會不斷重試

tail -f /var/log/secure

[root@oldboy50-01 ~]# ll -t

total 52

-rw-r--r--. 1 root root 10 Jul 17 04:28 oldboy.log

-rw-r--r--. 1 root root 56 Jul 16 18:42 *.sh

drwxr-xr-x. 3 root root 4096 Jul 15 01:48 oldboy

-rw-------. 1 root root 1160 Jul 14 23:41 anaconda-ks.cfg

-rw-r--r--. 1 root root 21736 Jul 14 23:41 install.log

-rw-r--r--. 1 root root 5890 Jul 14 23:38 install.log.syslog

實例1-5 打印配置文件nginx.conf內容的行號及內容,該如何做?

[root@oldboyedu50-lnb /oldboy]# #{1..5} 生成序列

[root@oldboyedu50-lnb /oldboy]# echo {1..10}

1 2 3 4 5 6 7 8 9 10

[root@oldboyedu50-lnb /oldboy]# echo {01..10}

01 02 03 04 05 06 07 08 09 10

[root@oldboyedu50-lnb /oldboy]# echo stu{01..10} |xargs -n1

stu01

stu02

stu03

stu04

stu05

stu06

stu07

stu08

stu09

stu10

[root@oldboyedu50-lnb /oldboy]# echo stu{01..10} |xargs -n1 >nginx.conf

方法1 cat

[root@oldboyedu50-lnb /oldboy]# cat -n nginx.conf

1 stu01

2 stu02

3 stu03

4 stu04

5 stu05

6 stu06

7 stu07

8 stu08

9 stu09

10 stu10

方法2 vim

:set nu #顯示行號

:set nonu #取消顯示行號

第2章 vmware 經典故障:

該虛擬機似乎正在使用中。

如果該虛擬機未在使用,請按“獲取所有權(T)”按鈕獲取它的所有權。否則,請按“取消(C)”按鈕以防損壞。

配置文件: G:\VMware\模板機01\老男孩教育50-模板機01.vmx

方法1.重啟計算機

方法2.通過everything 搜索 .lck 刪除 虛擬機名稱.lck 目錄 重啟vmware


linux第二關練習題