總結(jié)整理下過往用得多的Linux命令吧贷洲,其實也可以說是一些工具,比如兩個Linux主機傳文件围俘,就常用rsync砸讳,查找文件用find琢融,給文件打包用tar,查看進程用ps\pstree簿寂,然后磁盤擴容的時候用lvm相關(guān)的好幾個命令(fdisk\lvcreate\vgextend\pvcreate\xfs_grows等等)漾抬,還有yum開頭的一系列命令,然后還配置yum源等常遂,再還有查看系統(tǒng)日志纳令,配置用戶組文件文件夾權(quán)限的命令。貌似越想就越多克胳,但是大概只記得命令是哪一個平绩,而命令之后接的那些-開頭的選項就模糊了,看來還是有必要系統(tǒng)整理記錄漠另。
1. find命令
這個命令以前經(jīng)常在面試時被問起捏雌,命令作用其實類似于Windows的文件管理器中的搜索功能,搜索可以按某些類別來進行笆搓。不過命令還能對搜索到的文件腹忽,執(zhí)行某些操作比如刪除操作。命令語法如下:
find path -option [ -print ] [ -exec -ok command ] {} \;
意思就是查找某路徑path下的文件砚作,-option決定是怎樣的選項是查找某路徑下文件名或者文件大小怎樣的文件窘奏。-print指打印出找到的文件,[ -exec -ok command ] {} 是指對搜索到的內(nèi)容執(zhí)行什么操作{}代指搜索到的內(nèi)容葫录,\;表示結(jié)束着裹。所以這樣一條完整的find命令,可以用三段來介紹米同,path骇扇,-option, [ -exec -ok command ]
path面粮,可以用 . 代指當(dāng)前目錄及其子目錄少孝,/ 代指根目錄及其子目錄。如果path為空熬苍,則默認(rèn)使用當(dāng)前路徑稍走。
-option, 指一些用來查找文件的搜索選項,比如以文件名來搜索-name,以文件所屬主來搜索-user,以文件大小來搜索-size,如下列舉常用的來記錄和測試柴底。
- 查找根目錄下的txt文件(-name選項能做到)
find / -name ".txt"* - 根據(jù)文件大小來查找婿脸,比如文件大于4450字節(jié)的文件,并顯示文件詳細(xì)信息
find / -name ".txt" -size +4450c -exec ls -l {} ;*
3.服務(wù)器磁盤滿柄驻,一般由大的日志文件導(dǎo)致狐树,需找到大文件并刪除。
find / -size +500M -print0|xargs -0 du -m|sort -nr
(find指令為找出500M以上的文件鸿脓,print0和xargs -0配合使用抑钟,用來解決文件名中有空格或特殊字符問題涯曲。du -m是查看這些文件的大小,并以m為單位顯示在塔。最后sort -nr是按照數(shù)字反向排序掀抹,大的文件在前)
4.根據(jù)文件的創(chuàng)建時間來查找-atime/-ctime -n,分別是指過去n天內(nèi)被讀取的文件或者n天內(nèi)被修改的文件
find /tmp -atime -2
find /tmp -ctime -2
5.根據(jù)文件的類型來查找心俗,-type -c (c : 文件類型是 c 的文件,d: 目錄,c: 字型裝置文件,b: 區(qū)塊裝置文件,p: 具名貯列,f: 一般文件,l: 符號連結(jié),s: socket)
find /tmp -type d
6.按照文件的讀寫權(quán)限來查找,比如-perm 644蓉驹,查找權(quán)限為rw-r--r--的文件城榛,值得注意的是需要加-type f\d,來配合查找态兴。
find /tmp -type f -perm 755