⑴ linux系統用shell寫程序找出根目錄下的文件夾及路徑
在Linux系統中,使用Shell編寫程序可以方便地查找根目錄下的文件夾及其路徑。下面是一個簡單的腳本示例,用於列出根目錄下一級的文件夾名稱,但不顯示路徑。
bash
#!/bin/bash
##only show / dir
maxdepth_one=`ls -p / | grep / | tr -d /`
echo $maxdepth_one
##no "-maxdepth" ,show all ,number 1,the same above, 2show / and one sub dir.etc...
new=`find / -type d -maxdepth 1`
echo $new
在腳本的第一部分,我們使用`ls -p / | grep / | tr -d /`命令來列出根目錄下所有以斜杠結尾的文件夾(即目錄),並刪除這些斜杠以顯示目錄名稱。`ls -p /`命令列出根目錄下的所有文件和目錄,並在目錄後面加上斜杠。`grep /`命令過濾出以斜杠結尾的行,即目錄行。`tr -d /`命令刪除這些斜杠。
第二部分使用`find / -type d -maxdepth 1`命令來查找根目錄下的所有目錄,並顯示它們的完整路徑。`find /`命令從根目錄開始查找,`-type d`選項指定查找目錄,`-maxdepth 1`選項限制查找的深度為一級。
通過這種方式,你可以靈活地列出根目錄下的文件夾及其路徑,滿足不同的需求。這個腳本展示了如何使用基本的Shell命令和`find`命令來完成任務。
需要注意的是,`find`命令在查找時會返迴路徑,而`ls -p`命令則僅返迴文件夾名稱。根據實際需求,你可以選擇使用適合的方法來獲取所需的信息。
⑵ linux 根目錄磁碟滿了 查看哪個文件佔用大
df命令可以獲取硬碟被佔用了多少空間,目前還剩下多少空間等信息,它也可以顯示所有文件系統對i節點和磁碟塊的使用情況。
df命令各個選項的含義如下:
-a:顯示所有文件系統的磁碟使用情況,包括0塊(block)的文件系統,如/proc文件系統。
-k:以k位元組為單位顯示。
-i:顯示i節點信息,而不是磁碟塊。
-t:顯示各指定類型的文件系統的磁碟空間使用情況。
-x:列出不是某一指定類型文件系統的磁碟空間使用情況(與t選項相反)。
-T:顯示文件系統類型。
的英文原義為「disk usage」,含義為顯示磁碟空間的使用情況,統計目錄(或文件)所佔磁碟空間的大小。該命令的功能是逐級進入指定目錄的每一個子目錄並顯示該目錄佔用文件系統數據塊(1024位元組)的情況。若沒有給出指定目錄,則對當前目錄進行統計。
df命令的各個選項含義如下:
-s:對每個Names參數只給出佔用的數據塊總數。
-a:遞歸地顯示指定目錄中各文件及子目錄中各文件佔用的數據塊數。若既不指定-s,也不指定-a,則只顯示Names中的每一個目錄及其中的各子目錄所佔的磁碟塊數。
-b:以位元組為單位列出磁碟空間使用情況(系統默認以k位元組為單位)。
-k:以1024位元組為單位列出磁碟空間使用情況。
-c:最後再加上一個總計(系統默認設置)。
-l:計算所有的文件大小,對硬鏈接文件,則計算多次。
-x:跳過在不同文件系統上的目錄不予統計。
⑶ Linux操作系統下查找文件的幾種方法
linux下最來強大的搜索命令為源」find「。它的格式為」find <指定目錄> <指定條件> <指定動作>「;比如使用find命令搜索在根目錄下的所有interfaces文件所在位置,命令格式為」find / -name 'interfaces'「
使用locate搜索linux系統中的文件,它比find命令快。因為它查詢的是資料庫(/var/lib/locatedb),資料庫包含本地所有的文件信息。使用locate命令在根目錄下搜索interfaces文件的命令為」locate interfaces「
使用」whereis「命令可以搜索linux系統中的所有可執行文件即二進制文件。使用whereis命令搜索grep二進制文件的命令為」whereis grep「。