新聞中心
我們需要知道如何打開終端界面并進(jìn)入到指定文件夾內(nèi)。我們需要使用ls命令來列出當(dāng)前文件夾的所有內(nèi)容。ls -l此時(shí)屏幕上會顯示每個(gè)子項(xiàng)的權(quán)限、創(chuàng)建日期、大小等詳細(xì)信息。

按需定制可以根據(jù)自己的需求進(jìn)行定制,網(wǎng)站制作、網(wǎng)站設(shè)計(jì)構(gòu)思過程中功能建設(shè)理應(yīng)排到主要部位公司網(wǎng)站制作、網(wǎng)站設(shè)計(jì)的運(yùn)用實(shí)際效果公司網(wǎng)站制作網(wǎng)站建立與制做的實(shí)際意義
最近在學(xué)習(xí)Linux系統(tǒng)管理,發(fā)現(xiàn)使用Shell腳本可以大大提高工作效率。其中一個(gè)很基礎(chǔ)但卻實(shí)用的功能就是展示目錄結(jié)構(gòu)。如果你也想學(xué)習(xí)這個(gè)技能,那么請繼續(xù)閱讀下去。
首先,我們需要知道如何打開終端界面并進(jìn)入到指定文件夾內(nèi)。假設(shè)我們要進(jìn)入名為“my_folder”的文件夾,則在終端中輸入以下命令:
```
cd my_folder
接著,我們需要使用ls命令來列出當(dāng)前文件夾的所有內(nèi)容。該命令會將所有子文件和子文件夾列出來:
ls
如果希望更詳細(xì)地了解每個(gè)子項(xiàng)的信息,可以加上-l參數(shù):
ls -l
此時(shí)屏幕上會顯示每個(gè)子項(xiàng)的權(quán)限、創(chuàng)建日期、大小等詳細(xì)信息。
現(xiàn)在讓我們開始編寫自己的目錄結(jié)構(gòu)展示腳本吧!首先,在任意位置新建一個(gè)空白文本文檔,并將其重命名為“showdir.sh”(注意后綴必須是“.sh”,否則無法運(yùn)行)。然后右鍵單擊該文件并選擇“屬性”,切換到“權(quán)限”選項(xiàng)卡,并勾選“允許執(zhí)行此文件作為程序”。
接著,在showdir.sh文件中輸入以下代碼:
#!/bin/bash
echo "The directory structure is:"
echo ""
ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
這段代碼的作用是遞歸地列出當(dāng)前目錄及其子目錄下所有文件和文件夾,并將它們按照樹形結(jié)構(gòu)展示出來。其中:
- echo命令用于輸出一行文字,告訴用戶我們要展示的是目錄結(jié)構(gòu);
- ls命令加上-R選項(xiàng)表示遞歸地列出當(dāng)前目錄及其子目錄下所有內(nèi)容;
- grep命令過濾掉不需要展示的內(nèi)容(即非文件夾名稱),只保留以“:”結(jié)尾的行;
- sed命令對每個(gè)匹配到的行進(jìn)行替換操作:首先去掉末尾多余的冒號符號;然后將路徑分隔符“/”替換成連字符“-”,并在前面添加空格;最后將第一個(gè)連字符改為豎線。
完成以上步驟后,保存并關(guān)閉showdir.sh文件?,F(xiàn)在打開終端界面,進(jìn)入到你想要展示的目標(biāo)文件夾內(nèi),并運(yùn)行以下命令:
./showdir.sh
稍等片刻,你就可以看到該目錄下所有子項(xiàng)呈樹形結(jié)構(gòu)排列的結(jié)果了。
當(dāng)前題目:如何使用Shell寫一個(gè)顯示目錄結(jié)構(gòu)的命令?
轉(zhuǎn)載來源:http://fisionsoft.com.cn/article/cddocjj.html


咨詢
建站咨詢
