tree的使用,顯示行號,find命令應用


第1章 linux啟動過程

1、開機自檢bios

2mbr引導

3GRUB 菜單:選擇不同的內核

4、加載內核

5、運行init進程

6、讀取/etc/inittab運行級別配置文件

7、執行 /etc/rc.d/rc.sysinit 腳本 (系統的初始化腳本)配置主機名,IP地址

8、執行 /etc/rc.d/rc(根據運行級別運行相應的軟件)

9、顯示登陸界面

第2章 練習題

2.1 1

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

2.1.1 環境創建

mkdir /clsn -p

cd /clsn

mkdir ext/clsn test xiaodong xiaofan xingfujie -p

touch jeacen clsn wodi.gz yingsui.gz

2.1.2 方法一 tree

-d顯示目錄,-L 1找當前目錄

[root@znix clsn]# tree -dL 1

.

├── data

└── test

2.1.3 方法二 find

-maxdepth 最大目錄深度 表示非、排除

[root@znix clsn]# find . -maxdepth 1 -type d ! -name "."

./data

./test

2.1.4 方法三 ls +grep

^d 表示以d開頭的。

[root@znix clsn]# ls -l |grep "^d"

drwxr-xr-x  3 root root 4096 Aug 23 15:51 data

drwxr-xr-x. 3 root root 4096 Aug 23 15:51 test

2.1.5 方法四 ls -F + grep

ls -F 給不同的文件加上不同的標記 文件夾為/

[root@znix clsn]# ls -F /clsn/|grep "/"

tandao/

test/

2.1.6 方法五ls+awk

^d表示以d開頭的。

[root@znix clsn]# ls -l |awk '/^d/'

drwxr-xr-x  3 root root 4096 Aug 23 15:51 data

drwxr-xr-x. 3 root root 4096 Aug 23 15:51 test

2.1.7 方法六ls+awk

$2>1 , 表示第二列大於1

[root@znix clsn]# ls -l /clsn/|awk '$2>1'

total 20

drwxr-xr-x  3 root root 4096 Aug 23 15:51 data

drwxr-xr-x. 3 root root 4096 Aug 23 15:51 test

2.2 2

希望快速返回上一次進入的目錄

2.2.1 cd命令

[root@znix tmp]# cd /clsn/

[root@znix clsn]# pwd

/clsn

[root@znix clsn]# cd /tmp/

[root@znix tmp]# pwd

/tmp

[root@znix tmp]# cd -

/clsn

[root@znix clsn]# #cd - ==== cd $OLDPWD(存放着 你上一次所在的位置)

 

cd ..   ###進入到上一級目錄 當前目錄的上一級目錄

   .    ###當前目錄 cp /etc/hosts .

cd ~    ###當前用戶的家目錄     回老家

cd      ###回老家

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

2.2.2 練習

#進入到/etc/sysconfig/network-scripts/目錄,並查看你所在位置

#進入到上一級目錄,並查看你所在位置

#進入到/root目錄下面,並顯示你所在位置

#快速返回到/你上一次的位置

#回到老家

 

[root@znix ~]# cd /etc/sysconfig/network-scripts/

[root@znix network-scripts]# pwd

/etc/sysconfig/network-scripts

[root@znix network-scripts]# cd ..

[root@znix sysconfig]# pwd

/etc/sysconfig

[root@znix sysconfig]# cd /root/

[root@znix ~]# pwd

/root

[root@znix ~]# cd -

/etc/sysconfig

[root@znix sysconfig]# cd

[root@znix ~]# pwd

/root

2.3 3

一個目錄中有很多文件(ls -l 查看時好多屏),想用一條命令最快速度查看到最近更新的文件。如何看?

       -r時逆序顯示   -t按時間順序排序

[root@znix clsn]# ls -lrt

total 20

-rw-r--r--. 1 root root    7 Aug 17 17:00 t.sh

-rw-r--r--. 1 root root    0 Aug 17 17:00 clsn.txt

-rw-r--r--. 1 root root    0 Aug 17 17:00 alex.txt

-rw-r--r--. 1 root root    0 Aug 17 17:28 b

-rw-r--r--. 1 root root    8 Aug 17 19:35 test.sh

drwxr-xr-x  3 root root 4096 Aug 23 15:51 data

drwxr-xr-x. 3 root root 4096 Aug 23 15:51 test

-rw-r--r--  1 root root   43 Aug 24 12:02 nginx.conf

 

2.3.1 指定ls命令顯示日期的格式

[root@znix etc]# ls -l --time-style=long-iso

2.4 4

在配置apache 執行了./configure --prefix=/application/apache2.2.17  來編譯apche make install 完成后,希望用戶訪問 apache路徑更簡單,需要給/application/apache2.2.17 目錄做一個軟鏈接/application/apache,使得內部開發或管理人員通過/application/apache 就可以訪問到apache 的安裝目錄/application/apache2.2.17 下的內容,請你給出實現的命令。

(提示:apache為一個 web服務)

2.4.1 模擬環境

創建目錄

[root@znix clsn]# mkdir -p /application/apache2.2.17

[root@znix clsn]# ls -l /application/

total 4

drwxr-xr-x 2 root root 4096 Aug 30 10:10 apache2.2.17

2.4.2 創建軟連接

[root@znix clsn]# ln -s /application/apache2.2.17/ /application/apache

[root@znix clsn]# cd /application/

[root@znix application]# ls -l

total 4

lrwxrwxrwx 1 root root   26 Aug 30 10:12 apache -> /application/apache2.2.17/

drwxr-xr-x 2 root root 4096 Aug 30 10:10 apache2.2.17

2.4.3 模擬升級

[root@znix application]# mkdir -p /application/apache2.4.17

[root@znix application]# ls -l /application/

total 8

lrwxrwxrwx 1 root root   26 Aug 30 10:12 apache -> /application/apache2.2.17/

drwxr-xr-x 2 root root 4096 Aug 30 10:10 apache2.2.17

drwxr-xr-x 2 root root 4096 Aug 30 10:16 apache2.4.17

2.4.4 修改軟連接   

先將舊的軟鏈接刪除,防止出錯。

[root@znix application]# \rm -f /application/apache

[root@znix application]# ls -l /application/

total 8

drwxr-xr-x 2 root root 4096 Aug 30 10:10 apache2.2.17

drwxr-xr-x 2 root root 4096 Aug 30 10:16 apache2.4.17

[root@znix application]# ln -s /application/apache2.4.17/ /application/apache

[root@znix application]# ls -l /application/

total 8

lrwxrwxrwx 1 root root   26 Aug 30 10:17 apache -> /application/apache2.4.17/

drwxr-xr-x 2 root root 4096 Aug 30 10:10 apache2.2.17

drwxr-xr-x 2 root root 4096 Aug 30 10:16 apache2.4.17

2.5 5

已知 apache 服務的訪問日志按天記錄在服務器本地目錄/app/logs 下,由於磁盤空間緊張,現在要求只能保留最近 7 天的訪問日志!

2.5.1 方法一 find |xargs

-mtime +7 表示7天以前  7表示第七天, -7表示最近7

[root@znix ~]# find /app/logs/ -type f -name "*.log" -mtime +7 |xargs ls -ltr

-rw-r--r-- 1 root root 0 May  1 00:00 /app/logs/access_www_2017-05-01.log

-rw-r--r-- 1 root root 0 May  2 00:00 /app/logs/access_www_2017-05-02.log

-rw-r--r-- 1 root root 0 May  3 00:00 /app/logs/access_www_2017-05-03.log

-rw-r--r-- 1 root root 0 May  4 00:00 /app/logs/access_www_2017-05-04.log

-rw-r--r-- 1 root root 0 May  5 00:00 /app/logs/access_www_2017-05-05.log

-rw-r--r-- 1 root root 0 May  6 00:00 /app/logs/access_www_2017-05-06.log

-rw-r--r-- 1 root root 0 May  7 00:00 /app/logs/access_www_2017-05-07.log

-rw-r--r-- 1 root root 0 May  8 00:00 /app/logs/access_www_2017-05-08.log

-rw-r--r-- 1 root root 0 May  9 00:00 /app/logs/access_www_2017-05-09.log

-rw-r--r-- 1 root root 0 May 10 00:00 /app/logs/access_www_2017-05-10.log

-rw-r--r-- 1 root root 0 May 11 00:00 /app/logs/access_www_2017-05-11.log

-rw-r--r-- 1 root root 0 May 12 00:00 /app/logs/access_www_2017-05-12.log

2.5.2 方法二 $(find )

[root@znix ~]# ls -l $(find /app/logs/ -type f -name "*.log" -mtime +7)

2.5.3 方法三 find -exec {} \;

[root@znix ~]# find /app/logs/ -type f -name "*.log" -mtime +7 -exec ls -l {} \;

2.6 6

調試系統服務時,希望能實時查看/var/log/messages系統日志的更新。

-f 顯示文件的實時更新。

[root@znix ~]# tail -f /var/log/secure

       tailftail -f 大致相同。

[root@znix ~]# tailf /var/log/secure

2.7 7

打印輕量級 web 服務的配置文件 nginx.conf 內容的行號及內容

2.7.1 文件創建

stu{01..5}生成 stu01stu02···stu05 字符

[root@znix clsn]# echo stu{01..5}|xargs -n1 >nginx.conf

[root@znix clsn]# cat nginx.conf

stu01

stu02

stu03

stu04

stu05

2.7.2 方法一  cat

       -n 顯示文件行號

[root@znix clsn]# cat -n nginx.conf

     1  stu01

     2  stu02

     3  stu03

     4  stu04

     5  stu05

2.7.3 方法二 vim

輸入:再輸入命令

:set nu    ##顯示行號

:set nonu  ##取消顯示行號

       快捷鍵

G     把光標移動到最后一行

gg    把光標移動到第一行

o     在當前行下面插入一個空行 並進入到編輯模式

2.7.4 方法三 nl

nl 專門用於顯示行號

[root@znix clsn]# nl nginx.conf

     1  stu01

     2  stu02

     3  stu03

     4  stu04

     5  stu05

2.7.5 方法四 grep -n

-n 顯示行號,. 表示所有內容

[root@znix clsn]# grep -n "." nginx.conf

1:stu01

2:stu02

3:stu03

4:stu04

5:stu05

2.7.6 方法五 awk

print NR 表示顯示行號,$0 表示行的內容

[root@znix clsn]# awk '{print NR,$0}' nginx.conf

1 stu01

2 stu02

3 stu03

4 stu04

5 stu05


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM