day15
系統(tǒng)文件屬性
課程介紹
1.文件屬性中有什么
2.文件屬性文件類型 解鎖很多命令
3. 文件屬性文件權(quán)限
4. 文件屬性用戶信息
5. 文件屬性時間信息
6. 文件屬性索引信息 inode/block 讀取數(shù)據(jù)原理
7. 文件屬性鏈接概念 硬鏈接/軟鏈接
A. 文件屬性中有什么
01.文件屬性的組成部分
[root@han ~]# ll -i /etc/
總用量 1088
17109511 -rw-r--r--. 1 root root 16 7月 3 03:24 adjtime
16830412 -rw-r--r--. 1 root root 1518 6月 7 2013 aliases
16777285 -rw-r--r--. 1 root root 12288 7月 3 03:31 aliases.db
50337024 drwxr-xr-x. 2 root root 236 7月 3 03:21 alternatives
17125969 -rw-------. 1 root root 541 4月 11 2018 anacrontab
17026840 -rw-r--r--. 1 root root 55 10月 30 2018 asound.conf
50880996 drwxr-x---. 3 root root 43 7月 3 03:21 audisp
01---------02------03--------04---05------06---07----08----09文件名稱(不是文件屬性)
01.文件inode號碼 inode(index node)==書的目錄
02.文件類型信息 文件類型和文件擴(kuò)展名無關(guān)
03.文件權(quán)限信息 r-read 讀 w-write 寫 x-execute 可執(zhí)行(setup.exe)
04.文件硬鏈接數(shù) 相當(dāng)于超市的多個門
05.文件所屬用戶(屬主) 監(jiān)護(hù)人 管理數(shù)據(jù)的最高權(quán)利
06.文件所屬組用戶(屬組) 親人 管理數(shù)據(jù)信息
其他用戶 隔壁老王 管理數(shù)據(jù)信息(權(quán)利最低)
07.文件容量大小 默認(rèn)顯示字節(jié)信息
08.文件時間信息 文件修改時間信息
以上信息都屬于文件屬性信息
09.文件名稱信息 文件名稱信息不屬于文件屬性

B.文件屬性詳細(xì)說明---文件類型
文件類型說明: 文件類型查看命令 file
普通文件 - 文本文件 - 二進(jìn)制文件(命令文件) 腳本文件(.sh .py) 數(shù)據(jù)文件(壓縮文件)
普通文件:
**文本文件:
[root@han ~]# file old.txt
old.txt: UTF-8 Unicode text
命令文件:
[root@han ~]# file which cat反引號
/usr/bin/cat: ELF 64-bit LSB executable,
腳本文件:rpm -ql tree 復(fù)制最后/usr/share/man/man1/tree.1.gz
gzip compressed data, from Unix,
目錄文件:
d 開頭 directory
連接文件:
l 開頭 軟連接文件(快捷方式)
設(shè)備文件:
c 開頭 character 字符流設(shè)備文件 /dev/urandom 產(chǎn)生隨機(jī)碼
b 開頭 block 塊設(shè)備文件
套接字文件
s 開頭 socket(網(wǎng)絡(luò)通訊 網(wǎng)絡(luò)開發(fā))
查找etc文件里的所有目錄:ll /etc |grep -c "^d"
利用擴(kuò)展名標(biāo)識文件類型:
.log 日志文件
.conf 配置文件
.sh 腳本文件
.py python腳本文件
.tar.gz 壓縮文件
解鎖文件命令:
1)file --- 查看文件類型
2)which --- 查看命令文件路徑信息
3)whereis --- 顯示命令路徑信息和相關(guān)其他文件(幫助手冊文件)路徑
4)locate --- 查詢文件(任意)所在路徑信息 默認(rèn)沒有
解決方法:
查找相應(yīng)軟件包=yum provides locate -->mlocate
下載軟件包: yum install mlocate -y
使用方法:
第一步:創(chuàng)建一個文件索引數(shù)據(jù)庫文件
updatedb
第二步:找文件
locate oldboy.sh
5)*find ---擅長從系統(tǒng)中查找文件
說明:find命令參數(shù)都是短格式 -
[root@han etc]# find /root -name "old.txt"
/root/old.txt
[root@han etc]# find /root -name "old*"
/root/oldboy
/root/oldboy.sh
/root/oldboy00
/root/old.ee
/root/oldgl
/root/old.txt
[root@han etc]# find /root -name "*.txt"
/root/old.txt
[root@han etc]# find /root -name "o*.txt"
/root/old.txt
[root@han etc]# find /root -iname "o*.txt" 不分大小寫
根據(jù)文件類型查找文件:
[root@oldboyedu ~]# find /opt -type f
/opt/oldboy.sh
/opt/Oldboy.txt
[root@oldboyedu ~]# find /opt -type f -name "oldboy.sh" --- 多個查找條件是并且關(guān)系
/opt/oldboy.sh
補(bǔ)充:停止yum安裝軟件
方法一:ctrl + c
方法二:kill 8235(進(jìn)程號 --ps -ef)
文件類型有什么: man find -type
f file 找尋普通文件
d directory 找尋目錄文件
l link 找尋軟鏈接文件
c 字符流設(shè)備文件
b 塊設(shè)備文件
s 套接字文件
根據(jù)指定目錄層級查找文件:
find /opt -maxdepth 1 -type f -name "oldboy.sh" --- 根據(jù)指定目錄最大層級查找數(shù)據(jù)
find /opt -mindepth 1 -type f -name "oldboy.sh" --- 根據(jù)指定目錄最小層級查找數(shù)據(jù)


根據(jù)指定文件大小查找文件:
系統(tǒng)中有大文件數(shù)據(jù)占用磁盤空間?
find / -type f -size +50M --- 大于50M的文件找出來
find / -type f -size 50M --- 等于50M的文件找出來
find / -type f -size -50M --- 小于50M的文件找出來
查找文件根據(jù)文件大小信息,文件尺寸單位
`b' for 512-byte blocks (this is the default if no suffix is used)***
`c' for bytes ******按照塊查找
w' for two-byte words *****按照字節(jié)查找
`k' for Kilobytes (units of 1024 bytes) ******按照兩個字節(jié)查找
`M' for Megabytes (units of 1048576 bytes) ******按照兆查找
`G' for Gigabytes (units of 1073741824 bytes) ******按照G查找
tree --- 顯示目錄層級
顯示指定目錄層級結(jié)構(gòu)信息
[root@oldboyedu ~]# tree -L 1 /oldboy --- -----------
-------只查看/oldboy目錄下面的數(shù)據(jù)信息,不看子目錄中數(shù)據(jù)信息
/oldboy
├── oldboy01
├── oldboy02
└── oldboy03
只顯示目錄層級中目錄信息:
[root@oldboyedu ~]# tree -L 1 /oldboy
/oldboy
├── a.log
├── b.log
├── c.log
├── oldboy01
├── oldboy02
└── oldboy03
3 directories, 3 files
[root@oldboyedu ~]# tree -L 1 -d /oldboy --- 只顯示目錄結(jié)構(gòu)
/oldboy
├── oldboy01
├── oldboy02
└── oldboy03
tar --- 等價于windows rar zip軟件, 壓縮命令 云服務(wù)器默認(rèn)40G
如何壓縮數(shù)據(jù)(文本數(shù)據(jù) 腳本數(shù)據(jù) 小文件不要壓縮 已經(jīng)壓縮過文件 視頻 圖片)
格式 # tar 參數(shù) 生成壓縮包文件(路徑信息) 將什么文件進(jìn)行壓縮
tar vczf /opt/service.tar.gz /tmp/services
z --- 壓縮文件的方式 gzip
c --- 創(chuàng)建一個壓縮包文件
v --- 詳細(xì)顯示壓縮的過程
f --- 指定壓縮包的路徑(必須寫在所有參數(shù)最后)
檢查壓縮包數(shù)據(jù)
不解壓直接檢查:
tar tf /opt/service.tar.gz
t --- 不解壓,檢查壓縮包里面內(nèi)容
解壓檢查數(shù)據(jù)
tar xvf /opt/service.tar.gz
x --- 解壓指定壓縮包
指定解壓數(shù)據(jù)路徑
tar xf /opt/oldboy03.tar.gz -C /opt/
C --- 指定解壓縮數(shù)據(jù)路徑
說明:
01. 壓縮數(shù)據(jù)提示:
tar: Removing leading `/' from member names --- 每次壓縮數(shù)據(jù)會將絕對路徑/移除
解決方式: 利用相對路徑壓縮
cd /
tar zcvhf /opt/oldboy01.tar.gz ./etc/rc.local
cd /etc/
tar zcvhf /opt/oldboy01.tar.gz ./rc.local
壓縮數(shù)據(jù)練習(xí):
01. 將/etc/sysconfig目錄進(jìn)行壓縮處理 保存到/opt目錄中oldboy01.tar.gz
tar zcvf /opt/oldboy01.tar.gz /etc/sysconfig
02. 將/etc/hosts /etc/hostname /var/log/messages多個文件進(jìn)行壓縮 保存到/opt目錄中oldboy02.tar.gz
tar zcvf /opt/oldboy02.tar.gz /etc/hosts /etc/hostname /var/log/messages
03. 將/etc/rc.local 進(jìn)行壓縮,保存到/opt目錄中oldboy03.tar.gz
tar zcvf /opt/oldboy03.tar.gz /etc/rc.d/rc.local
tar zcvhf /opt/oldboy03.tar.gz /etc/rc.local
h --- 將軟連接文件所指向一個源文件進(jìn)行壓縮備份