首頁 >運維 >linux運維 >linux找出子目錄有哪些

linux找出子目錄有哪些

藏色散人
藏色散人原創
2023-03-28 11:08:313210瀏覽

linux找出子目錄的方法:1、登入linux系統,開啟並進入終端機;2、透過執行「man ls」指令得到檔案路徑;3、輸入並執行「ls -R | grep . /”指令即可得到目前目錄下的所有子目錄。

linux找出子目錄有哪些

本教學操作環境:linux5.9.8系統、Dell G3電腦。

linux找出子目錄有哪些?

LINUX下找到目錄下的所有子目錄

#很多時候, 如果某有些檔案路徑沒有創建, 程式執行時,可能會導致報錯。
所以我們需要事先建立好需要的檔案路徑。
這篇文章的前提是,已經有了測試環境的檔案路徑,在新環境中還沒有此路徑,這個時候就需要先得到檔案路徑。
當我們使用

man ls

會出現提示,當我們想要查找當前目錄下的所有文件, 可以利用以下命令:

ls -R

得到如下圖所示的結果,但是我們的目標只是找到路徑,而不是子路徑與子資料夾。
linux找出子目錄有哪些

其實可以利用

man grep

來進行資料搜尋的幫助。 其實我們只需要輸入

ls -R | grep ./

即可得到目前目錄下的所有子目錄。
linux找出子目錄有哪些

這就是思考大於學習的方法,如果我們直接學習了find指令,就可以使用

find . -type f

就可以直接得到上面所說的路徑。

那到了新環境, 怎麼快速建立這麼多路徑?
上面結果複製下來, 進行
替換
由" ./ " 替換為" mkdir -p ./ "
由" : " 替換為"; "

mkdir -p ./xxxx ;

其中已有路徑不再創建, 無此路徑即可自動建立其母路徑,故無需擔心原本路徑檔案會被替換置空。
以上全部執行即可, 也可以建立一個 xx.sh 文件, 裡面輸入指令。
執行

sh xx.sh;

如果路徑太多了,無法複製到編輯器下進行替換,怎麼辦呢?
上面的語句先重定向到某個文件,例:
">"是覆蓋定向,所以重定向的時候先看看hello.sh究竟是否存在,存在就會被覆蓋。
「>>"是追加定向
指令解析,這邊的 . 指的是目前路徑下的所有路徑。使用 / 可以取得根目錄下的所有目錄。

find . -type f > hello.sh;vi hello.sh;

在編輯器裡面輸入如下指令,這邊最好手敲 複製的話無法進入到指令模式。

:%s/\.\//mkdir -p /g
:%s/$/;/g
:wq

此時可以得到一個sh腳本,到需要建立目錄的地方建立檔案即可。

sh hello.sh;
推薦學習:《linux影片教學

以上是linux找出子目錄有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn