欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于linux命令提取文件夾內(nèi)特定文件路徑

 更新時(shí)間:2020年05月30日 10:17:36   作者:migoo  
這篇文章主要介紹了基于linux命令提取文件夾內(nèi)特定文件路徑,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

最近需要實(shí)現(xiàn)自動(dòng)化搜尋特定文件夾下的特定文件,并且需要分別保存文件路徑與文件名。算然使用python的walk能夠?qū)崿F(xiàn),但是感覺(jué)復(fù)雜了些。于是想看看linux自帶的命令是否能完成這項(xiàng)工作。

環(huán)境

需要查找的目錄結(jié)構(gòu)如下

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

目標(biāo)一:獲取所有py文件名

如果只使用find . -name '*.py'進(jìn)行查找,得出的結(jié)果是包含路勁的

./test/test.py
./test/regex.py
./MongoDB/cnt_fail.py

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

利用basename將find的所有搜索結(jié)果進(jìn)行處理我們需要使用find的參數(shù)-exec

最終的命令為:

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

結(jié)果:

test.py
regex.py
cnt_fail.py

其中{} 用于與-exec選項(xiàng)結(jié)合使用來(lái)匹配所有結(jié)果,然后支取其文件名。

目標(biāo)二:獲得所有py文件路徑,去重復(fù),刪除開(kāi)頭的“./”字符

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

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

find . -name '*.py' -exec dirname {} \;
搜索結(jié)果:

./test
./test
./MongoDB

可以看到路徑存在重復(fù),linux去除重可以利用sort再添加-u參數(shù),-u參數(shù)用于去除排序結(jié)果中的重復(fù)項(xiàng)
我們需要把上一個(gè)命令的輸出傳遞給sort作為輸入,很自然想到了管道

管道命令操作符是:|,它僅能處理經(jīng)由前面一個(gè)指令傳出的正確輸出信息,也就是 standard output 的信息,對(duì)于 stdandard
error 信息沒(méi)有直接處理能力。然后,傳遞給下一個(gè)命令,作為標(biāo)準(zhǔn)的輸入 standard input.

添加sort之后的命令為

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

運(yùn)行結(jié)果結(jié)果為:

./MongoDB
./test

最后我們?cè)倮胏ut刪除每一個(gè)路勁之前的./字符,參數(shù)-c3-意思提取字符串(起始位置為1)的第3個(gè)字符到最后的子串
最終命令為:

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

運(yùn)行結(jié)果:

MongoDB
test

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • CentOS 7.6安裝MySQL 5.7 GA版的教程圖解

    CentOS 7.6安裝MySQL 5.7 GA版的教程圖解

    本文通過(guò)圖文并茂的形式給大家介紹了CentOS 7.6安裝MySQL 5.7 GA版,需要的朋友可以參考下
    2019-09-09
  • CentOS6.5環(huán)境下使用rsync增量同步備份文件的方法

    CentOS6.5環(huán)境下使用rsync增量同步備份文件的方法

    這篇文章主要介紹了CentOS6.5環(huán)境下使用rsync增量同步備份文件的方法,結(jié)合實(shí)例形式分析了rsync進(jìn)行文件同步備份操作的相關(guān)命令與使用技巧,需要的朋友可以參考下
    2018-04-04
  • centOS7下Spark安裝配置教程詳解

    centOS7下Spark安裝配置教程詳解

    這篇文章主要介紹了centOS7下Spark安裝配置教程詳解,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • linux網(wǎng)絡(luò)知識(shí)詳解:iptables 規(guī)則介紹

    linux網(wǎng)絡(luò)知識(shí)詳解:iptables 規(guī)則介紹

    這篇文章主要介紹了linux網(wǎng)絡(luò)知識(shí)詳解:iptables 規(guī)則介紹,需要的朋友可以參考下
    2024-02-02
  • Linux查看系統(tǒng)文件打開(kāi)數(shù)的方法小結(jié)

    Linux查看系統(tǒng)文件打開(kāi)數(shù)的方法小結(jié)

    有許多情況下,我們需要查看一個(gè)進(jìn)程當(dāng)前打開(kāi)了哪些文件,反過(guò)來(lái)我們也希望知道某一個(gè)文件正在被哪些進(jìn)程所讀寫(xiě),在Linux下有許多有用的工具可以幫我們完成這兩個(gè)工作,本文給大家介紹了Linux查看系統(tǒng)文件打開(kāi)數(shù)的方法小結(jié),需要的朋友可以參考下
    2024-07-07
  • Linux中對(duì)MySQL優(yōu)化實(shí)例詳解

    Linux中對(duì)MySQL優(yōu)化實(shí)例詳解

    這篇文章主要介紹了Linux中對(duì)MySQL優(yōu)化實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • apache的AllowOverride以及Options使用詳解

    apache的AllowOverride以及Options使用詳解

    通常利用Apache的rewrite模塊對(duì) URL 進(jìn)行重寫(xiě)的時(shí)候, rewrite規(guī)則會(huì)寫(xiě)在 .htaccess 文件里。但要使 apache 能夠正常的讀取.htaccess 文件的內(nèi)容,就必須對(duì).htaccess 所在目錄進(jìn)行配置
    2012-11-11
  • Linux系統(tǒng)管理常用命令及參數(shù)說(shuō)明中文版

    Linux系統(tǒng)管理常用命令及參數(shù)說(shuō)明中文版

    這篇文章主要介紹了Linux系統(tǒng)管理常用命令及其參數(shù)的中文版說(shuō)明,方便了英文不好的同學(xué)學(xué)習(xí)Linux,需要的朋友可以參考下
    2014-03-03
  • linux Jenkins配置salve節(jié)點(diǎn)實(shí)現(xiàn)過(guò)程圖解

    linux Jenkins配置salve節(jié)點(diǎn)實(shí)現(xiàn)過(guò)程圖解

    這篇文章主要介紹了linux Jenkins配置salve節(jié)點(diǎn)實(shí)現(xiàn)過(guò)程圖解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Ubuntu解壓zip文件亂碼的解決方法

    Ubuntu解壓zip文件亂碼的解決方法

    最近在工作中遇到一個(gè)問(wèn)題,在Ubuntu的系統(tǒng)下解壓zip文件的時(shí)候居然出現(xiàn)了亂碼,通過(guò)查找網(wǎng)上的資料終于解決了,所以想著把解決問(wèn)題的兩個(gè)方法分享給大家,方便有需要的朋友們能夠參考借鑒,下面來(lái)一起看看吧。
    2016-11-11

最新評(píng)論