Linux基礎命令之: Linux常用命令
9.find
(1)作用。
在指定目錄中搜索文件,它的使用權限是所有用戶。
(2)格式。
find[路徑][選項][描述]
其中的路徑為文件搜索路徑,系統開始沿著此目錄樹向下查找文件。它是一個路徑列表,相互用空格分離。若缺省路徑,那么默認為當前目錄。
其中的描述是匹配表達式,是find命令接受的表達式。
(3)常見參數。
[選項]主要參數如表2.19所示。
表2.19 find選項常見參數列表
選項 | 參數含義 |
-depth | 使用深度級別的查找過程方式,在某層指定目錄中優先查找文件內容 |
-mount | 不在其他文件系統(如Msdos、Vfat等)的目錄和文件中查找 |
[描述]主要參數如表2.20所示。
表2.20 find描述常見參數列表
選項 | 參數含義 |
-name | 支持通配符*和? |
-user | 用戶名:搜索文件屬主為用戶名(ID或名稱)的文件 |
輸出搜索結果,并且打印 |
(4)使用實例。
[root@localhosttest]#find./-namehello*.c
./hello1.c
./iscit2005/hello2.c
在該實例中使用了-name的選項支持通配符。
(5)使用說明。
n 若使用目錄路徑為“/”,通常需要查找較多的時間,可以指定更為確切的路徑以減少查找時間。
n find命令可以使用混合查找的方法,例如,想在/etc目錄中查找大于500000字節,并且在24小時內修改的某個文件,則可以使用-and(與)把兩個查找參數鏈接起來組合成一個混合的查找方式,如“find/etc-size+500000c-and-mtime+1”。
10.locate
(1)作用。
用于查找文件。其方法是先建立一個包括系統內所有文件名稱及路徑的數據庫,之后當尋找時就只需查詢這個數據庫,而不必實際深入檔案系統之中了。因此其速度比find快很多。
(2)格式。
locate[選項]
(3)locate主要選項參數如表2.21所示。
表2.21 locate命令常見參數列表
選項 | 參數含義 |
-u | 從根目錄開始建立數據庫 |
-U | 在指定的位置開始建立數據庫 |
-f | 將特定的文件系統排除在數據庫外,例如proc文件系統中的文件 |
-r | 使用正則運算式做尋找的條件 |
-o | 指定數據庫的名稱 |
(4)使用實例。
[root@localhosttest]#locateissue-U./
[root@localhosttest]#updatedb
[root@localhosttest]#locate-rissue*
./ARM_TOOLS/uClinux-Samsung/lib/libpam/doc/modules/pam_issue.sgml
./ARM_TOOLS/uClinux-Samsung/lib/libpam/modules/pam_issue
./ARM_TOOLS/uClinux-Samsung/lib/libpam/modules/pam_issue/Makefile
./ARM_TOOLS/uClinux-Samsung/lib/libpam/modules/pam_issue/pam_issue.c
…
實例中首先在當前目錄下建立了一個數據庫,并且在更新了數據庫之后進行正則匹配查找。通過運行可以發現locate的運行速度非常快。
(5)使用說明。
locate命令所查詢的數據庫由updatedb程序來更新,而updatedb是由crondaemon周期性建立的,但若所找到的檔案是最近才建立或剛改名的,可能會找不到,因為updatedb默認每天運行一次,用戶可以由修改crontab配置(etc/crontab)來更新周期值。
11.ln
(1)作用。
為某一個文件在另外一個位置建立一個符號鏈接。當需要在不同的目錄用到相同的文件時,Linux允許用戶不用在每一個需要的目錄下都存放一個相同的文件,而只需將其他目錄下的文件用ln命令鏈接即可,這樣就不必重復地占用磁盤空間。
(2)格式。
ln[選項]目標目錄
(3)常見參數。
n -s建立符號鏈接(這也是通常惟一使用的參數)。
(4)使用實例。
[root@localhosttest]#ln-s../genromfs-0.5.1.tar.gz./hello
[root@localhosttest]#ls-l
total77948
lrwxrwxrwx1rootroot24Jan1400:25hello->../genromfs-0.5.1.tar.gz
該實例建立了當前目錄的hello文件與上級目錄之間的符號鏈接,可以看見,在hello的ls–l中的第一位為“l”,表示符號鏈接,同時還顯示了鏈接的源文件。
(5)使用說明。
n ln命令會保持每一處鏈接文件的同步性,也就是說,不論改動了哪一處,其他的文件都會發生相同的變化。
n ln的鏈接分軟鏈接和硬鏈接兩種。
軟鏈接就是上面所說的ln-s****,它只會在用戶選定的位置上生成一個文件的鏡像,不會重復占用磁盤空間,平時使用較多的都是軟鏈接。
硬鏈接是不帶參數的ln****,它會在用戶選定的位置上生成一個和源文件大小相同的文件,無論是軟鏈接還是硬鏈接,文件都保持同步變化。
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論