基于linux命令提取文件夾內特定文件路徑_Linux

來源:腳本之家  責任編輯:小易  

1、連接上相應的linux主機,進入到等待輸入shell指令的linux命令行狀態下。2、在linux命令行下輸入shell指令:zip-r test.zip/home/httpd/html/test。3、鍵盤按“回車鍵”運行shell指令,此時成功將test文件夾以及其以下文件一同打包到了test.zipwww.anxorj.tw防采集請勿采集本網。

最近需要實現自動化搜尋特定文件夾下的特定文件,并且需要分別保存文件路徑與文件名。算然使用python的walk能夠實現,但是感覺復雜了些。于是想看看linux自帶的命令是否能完成這項工作。

Linux中查找文件夾的命令是find命令。Linux-文件搜索命e69da5e887aa3231313335323631343130323136353331333431346430令find的操作使用方法如下: 1、全盤搜索,也可以指定目錄搜索。find

環境

需要查找的目錄結構如下

使用“cd”命令打開 文件夾,進入文件夾后,就可以查看文件夾里的文件。步驟如下: 1、使用win+R打開“運行窗口”。2、在打開的“運行”知窗口,輸入“cmd”打開Linux中命令行窗口。3、進入命令行窗口后,

. |____test | |____test2.txt | |____test.py | |____test.txt | |____regex.py |____MongoDB | |____.gitignore | |____cnt_fail.py | |____db

Linux下可以用sed命令向文件中追加內容。案例:把/etc/test1文件中1-10行內容寫入到test2中 sed-n '1,10'p/etc/test1>>test2 將file1的1-10行追加到file2sed命令行格式為:抄 sed[-nefri]

目標一:獲取所有py文件名

5、這里就要演示一下mkdir 的用法了,比如我要創建一個文件名字為one的文件夾,那么在linux里公式就應該寫成#mkdir one 具體操作如圖顯示。6、創建完成之后,用ls-l命令來查看一下文件的屬性,大家看到圖

如果只使用find . -name '*.py'進行查找,得出的結果是包含路勁的

./test/test.py

./test/regex.py

./MongoDB/cnt_fail.py

我們只需要文件名的話可以使用linux提供的命令basename

利用basename將find的所有搜索結果進行處理我們需要使用find的參數-exec

最終的命令為:

find . -name '*.py' -exec basename {} \;

結果:

test.py

regex.py

cnt_fail.py

其中{} 用于與-exec選項結合使用來匹配所有結果,然后支取其文件名。

目標二:獲得所有py文件路徑,去重復,刪除開頭的“./”字符

linux也有獲取文件路徑的命令dirname

略微修改之前的命令能夠顯示所有文件路徑

find . -name '*.py' -exec dirname {} \;

搜索結果:

./test

./test

./MongoDB

可以看到路徑存在重復,linux去除重可以利用sort再添加-u參數,-u參數用于去除排序結果中的重復項

我們需要把上一個命令的輸出傳遞給sort作為輸入,很自然想到了管道

管道命令操作符是:|,它僅能處理經由前面一個指令傳出的正確輸出信息,也就是 standard output 的信息,對于 stdandard

error 信息沒有直接處理能力。然后,傳遞給下一個命令,作為標準的輸入 standard input.

添加sort之后的命令為

find . -name '*.py' -exec dirname {} \; | sort -u

運行結果結果為:

./MongoDB

./test

最后我們再利用cut刪除每一個路勁之前的./字符,參數-c3-意思提取字符串(起始位置為1)的第3個字符到最后的子串

最終命令為:

find . -name '*.py' -exec dirname {} \; | sort -u | cut -c3-

運行結果:

MongoDB

test

用mv命令1.作用mv命令來為文件或目錄改名或將文件由一個目錄移入另一個目錄中。該命令等同于DOS系統下的ren和move命令的組合。它的使用權限是所有用戶。2.格式mv[options]源文件或目錄 目標文件或目錄3.[options]主要參數i:交互方式操作。如果mv操作將導致對已存在的目標文件的覆蓋,此時系統詢問是否重寫,要求用戶回答”y”或”n”,這樣可以避免誤覆蓋文件。f:禁止交互操作。mv操作要覆蓋某個已有的目標文件時不給任何指示,指定此參數后i參數將不再起作用。4.第二個參數當第二個參數類型是文件時,mv命令完成文件重命名,它將所給的源文件或目錄重命名為給定的目標文件名。當第二個參數是已存在的目錄名稱時,源文件或目錄參數可以有多個,mv命令將各參數指定的源文件均移至目標目錄中。在跨文件系統移動文件時,mv先拷貝,再將原有文件刪除,而鏈至該文件的鏈接也將丟失。5.應用實例(1)將/usr/udt中的所有文件移到當前目錄(用”.”表示)中:mv/usr/udt/*.(2)將文件test.txt重命名為wbk.txt:mv test.txt wbk.txt(3)把當前目錄的一個子目錄里的文件移動到另一個子目錄里mv 文件名/*另一個目錄(4)移動當前文件夾下的所有文件到上一級目錄mv*./內容來自www.anxorj.tw請勿采集。


  • 本文相關:
  • linux下修改mysql數據庫數據文件路徑的步驟
  • window與linux項目部署之linux文件路徑不存在問題
  • 詳解kali linux 常用文件與指令路徑
  • linux中如何查詢運行文件的全路徑的方法
  • linux中tar打包指定路徑文件的實現方法
  • linux中通過文件描述符獲取文件絕對路徑的方法
  • 查看linux服務器上mysql配置文件路徑的方法
  • linux修改mysql數據庫文件的路徑
  • .htaccess 頂級域名重定向綁定空間目錄
  • 基于apache的支持.net2.0的web服務器搭建
  • linux下執行java程序的方法
  • 阿里云linux服務器下安裝apache的簡單方法
  • ubuntu系統日志配置 /var/log/messages的方法
  • linux下獨立添加php擴展模塊mbstring的方法
  • 解決centos7中tomcat啟動與本機訪問問題
  • linux sysctl參數配置詳細介紹
  • centos 7使用samba共享文件夾的完整步驟
  • linux 命令行通配符及轉義符的實現
  • linux命令怎么把一個文件移動到另一個文件夾
  • Linux下,如何用命令,要求:只打包當前文件夾和所有子文件夾中的.
  • 我有兩個文件,需要用linux 命令提取兩個文件中,輸出 分別有的行 和 相同的行,求助如何寫命令?
  • linux 什么命令能找出一個文件夾里最近更新的文件?
  • Linux中查找文件夾的命令
  • linux在文字系統下怎樣打開一個文件夾及文件
  • 在linux命令行下如何將指定的幾行內容寫入到一個文件中?
  • Linux虛擬機命令如何創建新的文件和文件夾
  • linux復制文件夾命令到另一個文件夾下
  • 網站首頁網頁制作腳本下載服務器操作系統網站運營平面設計媒體動畫電腦基礎硬件教程網絡安全星外虛擬主機華眾虛擬主機linuxwin服務器ftp服務器dns服務器tomcat nginxzabbix云和虛擬化服務器其它首頁服務器linux下修改mysql數據庫數據文件路徑的步驟window與linux項目部署之linux文件路徑不存在問題詳解kali linux 常用文件與指令路徑linux中如何查詢運行文件的全路徑的方法linux中tar打包指定路徑文件的實現方法linux中通過文件描述符獲取文件絕對路徑的方法查看linux服務器上mysql配置文件路徑的方法linux修改mysql數據庫文件的路徑.htaccess 頂級域名重定向綁定空間目錄基于apache的支持.net2.0的web服務器搭建linux下執行java程序的方法阿里云linux服務器下安裝apache的簡單方法ubuntu系統日志配置 /var/log/messages的方法linux下獨立添加php擴展模塊mbstring的方法解決centos7中tomcat啟動與本機訪問問題linux sysctl參數配置詳細介紹centos 7使用samba共享文件夾的完整步驟linux 命令行通配符及轉義符的實現apache開啟.htaccess及.htaccessservice temporarily unavailabllinux下實現免密碼登錄(超詳細)apache rewrite url重定向功能的linux下用cron定時執行任務的方法apache性能測試工具ab使用詳解centos 6.4安裝配置lamp服務器(a阿里云服務器ping不通解決辦法(centos+nginx+php+mysql詳細配置apache you don""t have permissgit 詳細介紹查看、刪除、重命名遠程分支yum安裝本地rpm軟件方案詳解ubuntu18.04服務器密碼忘記或被篡改如何重centos 7 在vmware中的網絡設置詳細介紹apache安全配置之禁止目錄訪問的配置方法linux文件基本屬性知識點總結linux apache設置壓縮及緩存linux上通過ssh掛載遠程文件系統方法詳解linux系統使用用戶密鑰ssh主機訪問linux網絡相關配置文件
    免責聲明 - 關于我們 - 聯系我們 - 廣告聯系 - 友情鏈接 - 幫助中心 - 頻道導航
    Copyright © 2017 www.anxorj.tw All Rights Reserved
    陕西快乐10分下载