1. 程式人生 > >6.8 2.23-2.26

6.8 2.23-2.26

find命令 文件後綴名

2.23 find命令

whereis

[root@hyc-01-01 boot]# whereis ls 不常用的搜索命令

ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz

有獨立的庫保存文件的路徑,庫需要定期更新

locate

[root@hyc-01-01 boot]# locate 系統默認沒有安裝該命令相關的包

-bash: locate: 未找到命令

[root@hyc-01-01 boot]# yum install -y mlocate 安裝包

[root@hyc-01-01 boot]# locate ls

locate: 無法執行 stat () `/var/lib/mlocate/mlocate.db': 沒有那個文件或目錄

locate需要建立單獨的數據庫信息才能從數據庫中找到相關文件的信息

[root@hyc-01-01 boot]# updated 更新mlocat.db數據庫庫

[root@hyc-01-01 boot]# locate 123

/usr/lib/modules/3.10.0-693.el7.x86_64/kernel/drivers/media/dvb-frontends/cx24123.ko.xz

/usr/lib64/gconv/IBM1123.so 此時搜索出現相關內容

快捷鍵

Ctrl+L 將光標定位到最新出現的一行

Ctrl+d 退出一個終端,相當於執行了exitlogout

Ctrl+c 取消當前輸入的命令

Ctrl+u 刪除光標左邊的內容(不含光標上的內容)

Ctrl+a 將光標移動到行首

Ctrl+e 將光標移動到行尾

按文件名搜索

[root@hyc-01-01 ~]# find /home/ -name hhh 指定名稱和路徑查找

/home/hyc/hhh

[root@hyc-01-01 ~]# find /home/ -name "h*" 指定路徑的模糊搜索,只要h開頭的任何文件或目錄均匹配

/home/

/home/hyc

/home/hyc/hyc00

/home/hyc/hyc0

/home/hyc/hhh

/home/hyc1

/home/hyc1/hyc0

指定搜索文件的類型

[root@hyc-01-01 ~]# find /home/ -type d -name "h*" 模糊搜索

h開頭的文件並指定文件類型為目錄

/home/

/home/hyc

/home/hyc1

2.24 find命令

mtimectimeatime

[root@hyc-01-01 ~]# stat 3.txt 查看文件的具體信息

文件:"3.txt"

大小:105 塊:8 IO 塊:4096 普通文件

設備:803h/2051d Inode33574987 硬鏈接:1

權限:(0644/-rw-r--r--) Uid( 0/ root) Gid( 0/ root)

環境:unconfined_u:object_r:admin_home_t:s0

最近訪問:2018-06-07 07:52:55.778138329 +0800

最近更改:2018-06-07 06:54:40.927669409 +0800

最近改動:2018-06-07 07:52:15.519053502 +0800

創建時間:-

[root@hyc-01-01 ~]# chmod 700 3.txt 修改文件權限

[root@hyc-01-01 ~]# stat 3.txt

文件:"3.txt"

大小:105 塊:8 IO 塊:4096 普通文件

設備:803h/2051d Inode33574987 硬鏈接:1

權限:(0700/-rwx------) Uid( 0/ root) Gid( 0/ root)

環境:unconfined_u:object_r:admin_home_t:s0

最近訪問:2018-06-07 07:52:55.778138329 +0800

最近更改:2018-06-07 06:54:40.927669409 +0800

最近改動:2018-06-09 20:54:16.162805641 +0800 與前面對比該時間產生變化(ctime

[root@hyc-01-01 ~]# echo "11223344" >> 3.txt 3.txt追加內容

[root@hyc-01-01 ~]# stat 3.txt

File: '3.txt'

Size: 114 Blocks: 8 IO Block: 4096 regular file

Device: 803h/2051d Inode: 33574987 Links: 1

Access: (0700/-rwx------) Uid: ( 0/ root) Gid: ( 0/ root)

Context: unconfined_u:object_r:admin_home_t:s0

Access: 2018-06-07 07:52:55.778138329 +0800

Modify: 2018-06-09 20:58:06.842041667 +0800 以下兩個時間發生變化(mtimectime

Change: 2018-06-09 20:58:06.842041667 +0800 由於文件內容被修改導致文件大小變化,所以ctime會被改變

[root@hyc-01-01 ~]# cat 3.txt 查看3.txt

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

11223344

[root@hyc-01-01 ~]# stat 3.txt

File: '3.txt'

Size: 114 Blocks: 8 IO Block: 4096 regular file

Device: 803h/2051d Inode: 33574987 Links: 1

Access: (0700/-rwx------) Uid: ( 0/ root) Gid: ( 0/ root)

Context: unconfined_u:object_r:admin_home_t:s0

Access: 2018-06-09 21:03:26.301255337 +0800 文件內容被查看導致atime發生變化

Modify: 2018-06-09 20:58:06.842041667 +0800

Change: 2018-06-09 20:58:06.842041667 +0800

最近訪問:atime,用戶訪問使該時間產生變化

最近更改:mtime,用戶修改文件內容使該時間產生變化

最近改動:ctime,用戶修改文件inode信息(文件名、權限等)使該時間產生變化

[root@hyc-01-01 ~]# find / -type f -mtime -1 查看根目錄下一天以內並且內容被修改過的文件

-1:一天以內 +1:超過一天

[root@hyc-01-01 ~]# ls -l /var/cache/yum/x86_64/7/extras/mirrorlist.txt 查看上面find找出的一個文件

-rw-r--r--. 1 root root 575 Jun 8 22:09 /var/cache/yum/x86_64/7/extras/mirrorlist.txt

[root@hyc-01-01 ~]# date 當前時間

Sat Jun 9 21:12:16 CST 2018

[root@hyc-01-01 ~]# find /root -type d -name "1*" -o -type f -name "3.txt"

/root/3.txt 類型為目錄名稱以1開頭或者類型為文件名稱為3.txt

/root/111

2.25 find命令

[root@hyc-01-01 ~]# ln ls2 /tmp/ls2.bak

[root@hyc-01-01 ~]# ls -l ls2

-rw-r--r--. 2 root root 0 Jun 5 21:17 ls2

[root@hyc-01-01 ~]# ls -i ls2

16783945 ls2

[root@hyc-01-01 ~]# find / -inum 16783945 inode號查找文件

/root/ls2

/tmp/ls2.bak

[root@hyc-01-01 ~]# echo 33333 >> 3.txt

[root@hyc-01-01 ~]# find /root -type f -mmin -60 查看一小時內內容被修改過的文件(60分鐘)

/root/3.txt

-exec

[root@hyc-01-01 222]# find /root/222 -exec ls -l {} \;

total 0

-rw-r--r--. 1 root root 0 Jun 9 22:24 222 222目錄下的內容

-rw-r--r--. 1 root root 0 Jun 9 22:32 333

drwxr-xr-x. 2 root root 6 Jun 9 22:24 ccc

total 0

-rw-r--r--. 1 root root 0 Jun 9 22:24 /root/222/222 文件222

-rw-r--r--. 1 root root 0 Jun 9 22:32 /root/222/333 文件333

[root@hyc-01-01 222]# find /root/222

/root/222

/root/222/ccc

/root/222/222

/root/222/333

[root@hyc-01-01 222]# find /root/222 -type f

/root/222/222

/root/222/333

[root@hyc-01-01 222]# find /root/222 -type f -exec mv {} {}.bak \; 找出對應文件並修改文件名

[root@hyc-01-01 222]# ls

222.bak 333.bak ccc

[root@hyc-01-01 222]# find /root/ -type f -size -1k -exec ls -lh {} \; 搜索小於1K的文件

-rw-r--r--. 2 root root 0 Jun 5 21:17 /root/ls2 0字節文件

-rw-r--r--. 1 root root 0 Jun 7 07:15 /root/111/222/aaa

-rw-r--r--. 1 root root 0 Jun 7 07:05 /root/111/22

-rw-------. 1 root root 0 Jun 7 07:05 /root/111/.12.txt.swp

-rw-------. 1 root root 0 Jun 7 07:05 /root/111/.12.txt.swx

-rw-r--r--. 1 root root 0 Jun 9 22:24 /root/222/222.bak

-rw-r--r--. 1 root root 0 Jun 9 22:32 /root/222/333.bak

[root@hyc-01-01 222]# find /root/ -type f -size +1M -exec ls -lh {} \; 未找到大於1M的文件

[root@hyc-01-01 222]# find /root/ -type f -size +1m -exec ls -lh {} \; 此處兆單位必須用大寫m否則報錯

find: invalid -size type `m'

[root@hyc-01-01 222]# find /root/ -type f -size +1b -exec ls -lh {} \; 表示字節用小寫b

-rw-------. 1 root root 12K Jun 8 22:42 /root/.bash_history

-rw-r--r--. 1 root root 798 May 28 23:06 /root/.ssh/authorized_keys

-rw-------. 1 root root 1.7K May 30 22:13 /root/.ssh/id_rsa

-rw-------. 1 root root 6.6K Jun 5 22:49 /root/anaconda-ks.cfg.1

-rw-------. 1 root root 12K Jun 7 07:06 /root/111/12_txt.swp

表示千字節用小寫k,大寫k報錯

2.26 文件名後綴

LINUX下文件或命令區分大小寫

Linux下的文件名後綴不能絕對代表該文件的類型

一般管理員為方便區分不同和相同類型的文件,會為文件加上特定的後綴名,是一種人與人間的約定,後綴名不影響文件屬性

通常約定.conf文件為配置文件

[root@hyc-01-01 222]# echo $LANG

en 當前語言為英文

[root@hyc-01-01 ~]# stat 3.txt

File: '3.txt'

Size: 120 Blocks: 8 IO Block: 4096 regular file

Device: 803h/2051d Inode: 33574987 Links: 1

Access: (0700/-rwx------) Uid: ( 0/ root) Gid: ( 0/ root)

Context: unconfined_u:object_r:admin_home_t:s0

Access: 2018-06-09 22:26:00.391036328 +0800

Modify: 2018-06-09 22:09:58.7937×××9 +0800

Change: 2018-06-09 22:09:58.7937×××9 +0800

Birth: -

[root@hyc-01-01 ~]# echo $LANG

zh_CN.UTF-8 當前為中文

[root@hyc-01-01 ~]# stat 3.txt

文件:"3.txt"

大小:120 塊:8 IO 塊:4096 普通文件

設備:803h/2051d Inode33574987 硬鏈接:1

權限:(0700/-rwx------) Uid( 0/ root) Gid( 0/ root)

環境:unconfined_u:object_r:admin_home_t:s0

最近訪問:2018-06-09 22:26:00.391036328 +0800

最近更改:2018-06-09 22:09:58.7937×××9 +0800

最近改動:2018-06-09 22:09:58.7937×××9 +0800

創建時間:-


6.8 2.23-2.26