色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux系統攻略 用腳本快速實現everything程序

Linux愛好者 ? 來源:Linux愛好者 良許 ? 作者:Linux愛好者 良許 ? 2020-08-14 16:34 ? 次閱讀

我們知道,在 Windows 下,有一款非常實用的神器,叫作Everything,它可以在極短的時間里,搜索出來你所想要的文件/目錄,如下圖示:

Linux 下也有一些類似于 everything 的神器,比如:locate,Catfish,Tracker,等等。這些工具也十分強大,在此就不一一演示了,有興趣的小伙伴可以自行去體驗一下。

但是,其實我們自己也可以動手實現一個輕巧的 everything ,既可以滿足自己的需求,也可以提高自己的技術,還能在程序媛面前秀一把~

廢話不多說,我們直接上腳本:

#!/bin/sh #lazyfind #GNUAll-PermissiveLicense #Copyinganddistributionofthisfile,withorwithoutmodification, #arepermittedinanymediumwithoutroyaltyprovidedthecopyright #noticeandthisnoticearepreserved.Thisfileisofferedas-is, #withoutanywarranty. ##helpfunction functionhelpu{ echo"" echo"Fuzzysearchforfilename." echo"$0[--match-case|--path]filename" echo"" exit } ##setvariables MATCH="-iname" SEARCH="." ##parseoptions while[True];do if["$1"="--help"-o"$1"="-h"];then helpu elif["$1"="--match-case"-o"$1"="-m"];then MATCH="-name" shift1 elif["$1"="--path"-o"$1"="-p"];then SEARCH="${2}" shift2 else break fi done ##sanitizeinputfilenames ##createarray,retainspaces ARG=("${@}") set-e ##catchobviousinputerror if["X$ARG"="X"];then helpu fi ##performsearch forqueryin${ARG[*]};do /usr/bin/find"${SEARCH}""${MATCH}""*${ARG}*" done

這段腳本不是良許的原創,而是國外一個小哥的作品。這個腳本寫得還是非常簡潔,并且使用了一些常用的 Shell 編程技術,好好去研究它也會提高自己的 Shell 編程水平。

那么這個腳本怎么用?

第一步,創建一個腳本文件。

比如創建的腳本文件是lazy_find.sh。

$vimlazy_find.sh

然后,我們再把上面的腳本內容復制進去,再按:wq保存并退出。

接著,我們再用chmod命令賦予這個腳本可執行權限:

$chmod+xlazy_find.sh

第二步,使用腳本搜索文件。

最基本的用法,就是在腳本名稱后面直接跟上要搜索的文件名稱。不需要跟上完整的名稱,只需要其中一部分就好,比如:

$./lazy_find.shscr

運行結果如下:

可以看到,這個腳本不僅可以搜索當前路徑下的文件,還可以搜索當前目錄下的子目錄及孫目錄,也就是具有遞歸搜索的功能。

上面這種用法是不匹配大小寫的效果,也就是說,既可以匹配到scr,也可以匹配到Scr。那么,如果想要區分大小寫,需要怎么做?

只需加上-m選項即可。

$./lazy_find.sh-mscr

運行結果如下:

可以看到,Scr已經沒有再被匹配到了。

如果我們不想搜索當前目錄,而是想要搜索指定目錄,則只需加上--path,并指定想要搜索的路徑即可。

比如,我們想在家目錄下搜索包含有hello關鍵字的文件/目錄,可以這么運行命令:

$./lazy_find.sh--path~hello

運行結果如下:

第三步,自定義命令調用腳本

在上面的使用方法中,我們需要自己手動去運行那個腳本文件,這樣肯定是非常不方便的。我們可以自定義一個命令,比如lf,當運行這個命令時,就自動調用這個腳本,從而大大提高效率。

有 Linux 基礎的小伙伴應該想到了,我們可以使用alias命令來實現這個效果。為了能夠在系統重啟之后lf命令依然能使用,我們直接在.bashrc里進行修改。

$vim~/.bashrc

在.bashrc文件的末尾增加這么一行語句即可:

aliaslf=~/bin/lazy_find.sh#路徑別照抄,寫你自己的腳本路徑!!

增加完語句之后,按:wq保存并退出。然后,再使能我們的修改:

$.~/.bashrc

OK,大功告成了,我們在任意地方都可以使用這個命令了。

小結

本文我們通過一段腳本來實現 everything 的一些基本功能,通過學習這個腳本,我們可以提高自己的 Shell 編程能力,同時也可以學會如何自定義命令來調用自己寫的腳本。

本文比較基礎,適合小白入門。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11336

    瀏覽量

    210097
  • WINDOWS
    +關注

    關注

    4

    文章

    3564

    瀏覽量

    89095
  • 程序
    +關注

    關注

    117

    文章

    3794

    瀏覽量

    81281
  • 腳本
    +關注

    關注

    1

    文章

    391

    瀏覽量

    14916

原文標題:自己動手在 Linux 系統實現一個 everything 程序

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    嵌入式Linux啟動時間優化的秘密之四-啟動腳本

    系統啟動 有多種方法可以減少啟動應用程序之前執行啟動腳本中花費的時間: 僅在啟動必要的依賴項之后,盡快啟動應用程序。 簡化shell腳本
    發表于 04-21 09:22 ?2477次閱讀
    嵌入式<b class='flag-5'>Linux</b>啟動時間優化的秘密之四-啟動<b class='flag-5'>腳本</b>

    幾個經典高效的linux腳本

    今天浩道跟大家分享硬核shell干貨,以下幾個腳本皆為經典高效的linux腳本,拿來即用!
    發表于 10-21 09:04 ?1504次閱讀

    Linux Shell腳本入門到實戰詳解

    Linux Shell腳本入門到實戰詳解
    發表于 02-17 15:03 ?656次閱讀

    Linux shell腳本分享

    今天浩道跟大家分享幾個Linux運維中常用到的shell腳本
    發表于 07-18 09:53 ?571次閱讀
    <b class='flag-5'>Linux</b> shell<b class='flag-5'>腳本</b>分享

    [分享資料]Linux Shell Scripting Cookbook圖靈程序設計叢書:Linux Shell腳本攻略

    ,《Linux Shell腳本攻略》的內容由淺入深且緊貼實踐,使得他們能夠快速地學以致用,而專業人士也能從《Linux Shell
    發表于 09-11 23:56

    LINUX SHELL腳本攻略(中文版帶書簽)

    LINUX SHELL腳本攻略(中文版帶書簽)網絡資源僅供大家學習
    發表于 12-13 09:47

    Linux下組態,快速實現監控系統

    `基于紫金橋跨平臺跨平臺實時數據庫,可Linux系統快速實現一個監控系統。1、組態流程和傳統windows組態差不多,所以上手很快。2、不
    發表于 12-23 15:46

    如何通過Linux系統的Shell用戶訪問操作系統內核服務

    1、Linux Shell編程介紹Shell 是一個 C 語言編寫的程序,通過 Shell 用戶可以訪問操作系統內核服務。Shell 既是一種命令語言,又是一種
    發表于 06-14 16:50

    Linux腳本教程

    Linux腳本教程
    發表于 10-30 15:48 ?12次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>腳本</b>教程

    linux shell 腳本入門

    1. Linux 腳本編寫基礎 1.1 語法基本介紹 1.1.1 開頭 程序必須以下面的行開始(必須方在文件的第一行): #!/bin/sh 符號#!用來告訴系統它后面的參數是用來執行
    發表于 11-07 15:44 ?11次下載

    Linux常見調用shell腳本的三種方法

    編寫Linux下的應用程序時有時需要調用Linux的相關shell腳本,在這些腳本中通過調用Linux
    的頭像 發表于 06-28 14:28 ?8460次閱讀

    Linux系統命令及shell腳本實踐指南

    Linux系統命令及shell腳本實踐指南資料下載。
    發表于 06-01 14:47 ?28次下載

    Linux命令行與shell腳本編寫

    Linux命令行與shell腳本編寫
    發表于 01-11 16:50 ?4次下載

    Linux系統中調用腳本的常見方法

    linux系統中有多種方法可以在系統啟動后調用腳本,接下來介紹幾種常見的方法
    的頭像 發表于 12-13 18:16 ?1077次閱讀

    Linux從零到精通:最簡單的Shell腳本入門教程

    case語句 shell變量數組 shell腳本前言 |為什么學習shell編程 Shell腳本語言是實現Linux/UNIX系統
    的頭像 發表于 12-05 09:56 ?628次閱讀
    <b class='flag-5'>Linux</b>從零到精通:最簡單的Shell<b class='flag-5'>腳本</b>入門教程
    主站蜘蛛池模板: 国产午夜视频在永久在线观看| 国产偷窥盗摄一区二区| 国产欧美精品国产国产专区| 青青青草免费| proburn中文破解版下载| 乱辈通奷XXXXXHD猛交| 亚洲一区在线观看视频| 国产综合视频在线观看一区| 亚洲 欧美 国产 综合 播放| 国产色婷婷亚洲99精品| 亚洲高清中文字幕| 國產日韓亞洲精品AV| 亚洲黄视频在线观看| 果冻传媒在线观看资源七夕| 亚洲视频在线观| 啦啦啦视频在线观看WWW| 99re久久热在线视频| 秋霞av伦理片在线观看| 丰满少妇67194视频| 色宅男午夜电影网站| 国产午夜精品久久久久婷婷| 亚洲欧美成人| 美国z0069| xxnx日本| 我的好妈妈BD免费观看| 花蝴蝶hd免费| 91精选国产| 日韩亚洲欧美中文高清| 国产人妖一区二区| 在线观看国产小视频| 欧美夜夜噜2017最新| 国产精品www视频免费看| 亚洲精品成人无码区一在线观看| 理论片午午伦夜理片影院| 把内衣脱了把奶露出来| 性色少妇AV蜜臀人妻无码| 久久中文字幕亚洲精品最新| 边做边爱免费视频播放| 亚洲色欲色欲WWW在线成人网| 欧美黑人经典片免费观看| 国产精品视频成人|