Linux命令快速定位乙個檔案的方法簡介

2021-09-11 07:48:59 字數 2592 閱讀 3588

| | |-- do-things.sh

| | ——-- project-notes.txt

| ——-- status-reports.txt

|-- music

|-- pictures

| |-- trees.png

| ——-- wall*****.png

|-- videos

——-- notes.txt

如果列出的太多了,使用 -l 選項,並在其後加上你想檢視的層級數,可以限制列出檔案的層級:

$ tree -l 2

.|-- documents

| |-- notes.txt

| |-- secret

| ——-- work

|-- music

|-- pictures

| |-- trees.png

| ——-- wall*****.png

|-- videos

——-- notes.txt

你也可以顯示乙個指定目錄的樹狀圖:

$ tree documents/work/

documents/work/

|-- project-abc

| |-- readme.md

| |-- do-things.sh

| ——-- project-notes.txt

——-- status-reports.txt

如果使用 tree 列出的是乙個很大的樹狀圖,你可以把它跟 less 組合使用:

$ tree | less

再一次,tree 有很多其他的選項可以使用,你可以把他們組合在一起發揮更強大的作用。man 手冊頁有所有這些選項:

$ man tree

find

那麼如果不知道檔案在**呢?就讓我們來找到它們吧!

要是你的系統中沒有 find,你可以使用 dnf 安裝它:

$ sudo dnf install findutils

執行 find 時如果沒有新增任何選項或者引數,它將會遞迴列出當前目錄下的所有檔案和目錄。

$ find

../documents

./documents/secret

./documents/secret/christmas-presents.txt

./documents/notes.txt

./documents/work

./documents/work/status-reports.txt

./documents/work/project-abc

./documents/work/project-abc/readme.md

./documents/work/project-abc/do-things.sh

./documents/work/project-abc/project-notes.txt

./.bash_logout

./.bashrc

./videos

./.bash_profile

./.vimrc

./pictures

./pictures/trees.png

./pictures/wall*****.png

./notes.txt

./music

但是 find 真正強大的是你可以使用檔名進行搜尋:

$ find -name do-things.sh

./documents/work/project-abc/do-things.sh

或者僅僅是名字的一部分 —— 像是檔案字尾。我們來找一下所有的 .txt 檔案:

$ find -name ".txt"

./documents/secret/christmas-presents.txt

./documents/notes.txt

./documents/work/status-reports.txt

./documents/work/project-abc/project-notes.txt

./notes.txt

你也可以根據大小尋找檔案。如果你的空間不足的時候,這種方法也許特別有用。現在來列出所有大於 1 mb 的檔案:

$ find -size +1m

./pictures/trees.png

./pictures/wall*****.png

當然也可以搜尋乙個具體的目錄。假如我想在我的 documents 資料夾下找乙個檔案,而且我知道它的名字裡有 「project」 這個詞:

$ find documents -name 「project」

documents/work/project-abc

documents/work/project-abc/project-notes.txt

除了檔案它還顯示目錄。你可以限制僅搜尋查詢檔案:

$ find documents -name 「project」 -type f

documents/work/project-abc/project-notes.txt

最後再一次,find 還有很多供你使用的選項,要是你想使用它們,man 手冊頁絕對可以幫到你:

$ man find

via:

Linux 命令查詢乙個檔案

因為找乙個之前寫的乙個指令碼檔案init.sh 使用命令 從根目錄開始搜尋所有命名為init.sh的檔案 find name init.sh type f print輸出效果 find proc 3101 ns permission denied find proc 3105 task 3105 f...

where 命令乙個快速定位工具所在的功能

有時候,我們希望知道我們當前使用的工具是在那個目錄下的那個檔案,where 命令就很好的幫助了我們。下面的例子是查詢.net 4.0 的 gacutil 命令所在位置,所以使用了 visual studio command prompt 2010 這個命令列工具,其實這個 where 命令在很早版本...

每天乙個Linux命令 鏈結檔案

ll 新的檔名 將ll檢視的內容寫入到指定的檔案中,輸出重定向 再看一下a.text中的檔案 ln 原檔名 新的需要鏈結的檔名 用ls檢視,已經生成了鏈結檔案b.text cat 新的需要鏈結的檔名 檢視生成的b.text中的內容,跟a中是一樣的 ln s 原檔案 鏈結檔案 軟連線,ls檢視,c.t...