find命令、文件名後綴以及Linux和Windows互傳文件
文件查找:
1.which(一般用於查找命令的絕對路徑)
2.whereis(不常用)
3.locate(非實時查找,基於預先定義的數據庫。模糊查找,查找速度快。使用前要先安裝這個命令yum -y install mlocate,而且每次使用前最好更新數據庫updatedb)
locate -i :查找時不區分大小寫。
4.find(實時查找,精確查找,查找速度較慢)
find命令的用法:
根據姓名來查找:
find 路徑 -name “文件名”:在。。。目錄下查找名為。。。的文件。
find -iname:不區分大小寫。
若find後面沒有寫路徑,則是在當前目錄下查找。
根據類型來查找:
find 路徑 -type
根據時間戳來查找:
文件有三個時間:atime、mtime、ctime。(以天為單位)
atime:最後一次被訪問的時間。
mtime:最後一次文件內容被修改的時間。
ctime:最後一次文件屬性(大小、權限、所屬等)被修改的時間。
amin、mmin、cmin:以分鐘為單位。
find /etc -mtime -1:在/etc底下查找1天內修改過內容的文件。
find /root -ctime +5:在/root底下查找5天前更改過屬性的文件。
find的多個查詢條件可以並列在一起使用,他們之間是“且”的關系。如果想讓他們變成“或”的關系,則在條件之間使用 -o 選項。
根據inode號來查找:
find / -inum inode號:查找inode號為。。。的文件。(用於尋找硬鏈接)
根據大小來查找:
find /etc -size 10M:查找/etc目錄下,大小為10M的文件。
find /etc -size +10M:查找/etc目錄下,大於10M的文件。
find /etc -size -10M:查找/etc目錄下,小於10M的文件。
M是大寫,k是小寫,分別代表單位“兆”和“千”。
find找到文件後再執行命令:
find /root -type f -mmin -60 -exec mv {} {}.bak \; :查找/root目錄下,在一個小時之內修改過的文件,並重新命名為“文件名.bak”。 (其中,-exec是find的一個選項,用於承接前後兩條命令。{}代表查找到的每一個文件,遍歷執行後面的命令。\;是結束符號)
find /etc -type f -perm /7000 -exec ls -l {} \; :查找/etc目錄下,有特殊權限的文件並列出它們的詳細信息。
find /home -user user1 -group user1 -exec cp -a {} /root/backups \; :查找/home 目錄下,擁有者和擁有組均為user1 的文件,備份至/root/backups目錄下,並保留權限。(cp -a 相當於cp -r 加 cp -p)
文件名後綴
在linux中,文件名的後綴並不能決定文件類型,我們只是習慣於給不同的文件相應的後綴,讓我們更容易識別。
Linux和Windows互傳文件
1.使用winscp工具
2.使用centos7自帶的命令sz和rz
首先,要先安裝 lrzsz 這個安裝包,yum -y install lrzsz。然後,使用 "sz 文件名",把Linux上的文件傳給Windows。使用 rz 命令把Windows上的文件傳給Linux(默認保存在當前目錄下)。必須配合Xshell使用,不能直接在虛擬機上敲這兩個命令(會死機)。這種方法時常會出問題,不推薦使用。
3.使用Xshell自帶的xftp工具(需要預先安裝xftp)
find命令、文件名後綴以及Linux和Windows互傳文件