91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux下find與exec如何結合使用

發布時間:2021-10-27 10:53:57 來源:億速云 閱讀:461 作者:小新 欄目:系統運維

這篇文章主要為大家展示了“Linux下find與exec如何結合使用”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“Linux下find與exec如何結合使用”這篇文章吧。

在Linux下工作,find命令絕對是一個非常高頻的命令。我們可以用find命令來找到符合某些關鍵詞的文件,找到某些日期的文件,也可以設定一些正則表達式,找到一系列滿足該條件的文件。

但是,如果只有一個find命令的話,我們僅能將文件找出來,列在終端里。僅一個find命令還不足以再做進一步的操作。比如說,我們想把項目文件夾里的中間文件(*.o文件)找出來,再把它們全部刪除;再如,我們想把日志文件夾下3天以上的日志全部轉移到指定文件夾下;等等諸如此類的需求,還有非常多。

像這樣的,我們想用find命令找到相關文件,再作進一步操作,該如何進行呢?這時候exec命令就派上用場。

我們先來看看exec的基本用法。

-exec參數后面跟的就是我們想進一步操作的命令,比如rm,mv等等。exec是以分號";"作為結束標識符的,考慮到各個系統平臺對分號的不同解釋,我們在分號前再加個反斜杠,便于移植。而在分號前,通常也會有一對花括號{},代表前面find命令查找出來的文件各。

我們直接通過幾個實例來講解find與exec聯合用法。為了演示的方便,我們假定有如下的一個項目文件夾:

Linux下find與exec如何結合使用

實例1:使用find命令查找相關文件后,再使用ls命令將它們的詳細信息列出來

我們現在想把當前目錄下所有的.o文件全部找出來,并用 ls -l 命令將它們列出來。實現這個需求的命令如下:

find . -name "*.o" -type f -exec ls -l {} \;

結果如下:

Linux下find與exec如何結合使用

在這里,我們用find 命令匹配到了當前目錄下的所有.o文件,并在 -exec 選項中使用 ls -l 命令將它們的詳細信息列出來。

實例2:使用find命令查找相關文件后,再使用rm命令將它們刪除

我們現在想把當前目錄下所有的.o文件全部找出來,并用rm命令將它們刪除。實現這個需求的命令如下:

find . -name "*.o" -exec rm {} \;

執行完這個命令后,該目錄下所有的.o文件都被刪除。由于這個動作完成后也不會有任何提示,所以就沒有截圖的必要了。

實例3:使用-exec選項的安全模式,將對每個匹配到的文件進行操作之前提示用戶

在實例2中,我們匹配到文件后就立刻執行rm命令,這樣操作有些危險,因為如果一旦誤操作,有可能會引起災難性的后果。

exec的安全模式就是為了避免這個問題而產生。它會在匹配到某個文件后,在進行操作之前會先問一下你,經過你的確認它才會進行相應操作。

同樣的實例2的需求,如果采用安全模式的話,命令是這樣的:

find . -name "*.o" -ok rm {} \;

執行結果如下:

Linux下find與exec如何結合使用

實例4:搜索匹配到的文件中的關鍵內容

假如我現在有個很大型的項目(如Linux內核),我想在里面搜索一個含有某關鍵字的文件。我們可以使用grep命令檢索所有的文件。這樣做肯定是可以的,但如果項目很大的話,這樣太耗時了,效率太低。

我們可以先用find命令找到所以相關文件,然后再用grep命令檢索那些文件即可。因為已經使用find過濾一遍了,所以這樣操作會節約很多時間,提高效率。

命令如下:

find . -name "*.h" -exec grep -rns "hello" {} \;

結果如下:

Linux下find與exec如何結合使用

實例5:查找文件并移動到指定目錄

這個需求就比較簡單了。比如我現在想把所有的.o文件找出來,然后新他們mv到buil目錄。命令如

下:

find . -name "*.o" -exec cp {} build \;

結果如下:

Linux下find與exec如何結合使用

以上是“Linux下find與exec如何結合使用”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宝清县| 马公市| 浮山县| 昌都县| 望都县| 长丰县| 和田市| 阿勒泰市| 姚安县| 宿迁市| 西吉县| 济阳县| 枞阳县| 清水河县| 新安县| 垫江县| 平江县| 外汇| 麻城市| 西林县| 静海县| 丘北县| 阜新市| 上犹县| 襄樊市| 尚志市| 洪洞县| 耿马| 蒙自县| 景泰县| 邯郸县| 革吉县| 廉江市| 安庆市| 西藏| 衡阳县| 黄骅市| 汕头市| 乌拉特后旗| 普格县| 巩义市|