搜尋
首頁系統教程Linux慎用Linux find命令

慎用Linux find命令

Jun 02, 2024 am 11:28 AM
linuxlinux教程紅帽linux系統linux指令linux認證紅帽linuxlinux視頻

慎用Linux find命令

当使用 Linux 下的 find 命令时,请使用 -ok 选项来避免文件被意外删除,这个选项会在移除任何文件之前都会请求你的许可。

最近有朋友提醒我有一个有用的选项来更加谨慎地运行 find 命令,它就是 -ok。除了一个重要的区别之外,它的工作方式与 -exec 相似,它使 find 命令在执行指定的操作之前请求权限。

这有一个例子。如果你使用 find 命令查找文件并删除它们,你可能使用的是下面的命令:

$ find . -name runme -exec rm {} \;

在当前目录及其子目录中中任何名为 “runme” 的文件都将被立即删除 —— 当然,你要有权限删除它们。改用 -ok 选项,你会看到类似这样的东西,但 find 命令将在删除文件之前会请求权限。回答 y 代表 “yes” 将允许 find 命令继续并逐个删除文件。

$ find . -name runme -ok rm {} \;
 ?
-execdir 命令也是一个选择

另一个可以用来修改 find 命令行为,并可能使其更可控的选项是 -execdir 。-exec 会运行指定的任何命令,而 -execdir 则从文件所在的目录运行指定的命令,而不是在运行find` 命令的目录运行指定的命令。这是两个它的例子:

$ pwd
/home/shs
$ find . -name runme -execdir pwd \;
/home/shs/bin
$ find . -name runme -execdir ls \;
ls rm runme

到现在为止还挺好。但要记住的是,-execdir 也会在匹配文件的目录中执行该命令。如果运行下面的命令,并且目录包含一个名为 “ls” 的文件,那么即使该文件没有执行权限,它也将运行该文件。使用 -exec 或 -execdir 类似于通过 source 来运行命令。

$ find . -name runme -execdir ls \;
Running the /home/shs/bin/ls file
$ find . -name runme -execdir rm {} \;
This is an imposter rm command
$ ls -l bin
total 12
-r-x------ 1 shs shs 25 Oct 13 18:12 ls
-rwxr-x--- 1 shs shs 36 Oct 13 18:29 rm
-rw-rw-r-- 1 shs shs 28 Oct 13 18:55 runme
cat bin/ls
echo Running the $0 file
$ cat bin/rm
echo This is an imposter rm command
-okdir 选项也会请求权限

要更谨慎,可以使用 -okdir 选项。类似 -ok,该选项将请求权限来运行该命令。

$ find . -name runme -okdir rm {} \;
 ?

你也可以小心地指定你想用的命令的完整路径,以避免像上面那样的冒牌命令出现的任何问题。

$ find . -name runme -execdir /bin/rm {} \;

find 命令除了默认打印之外还有很多选项,有些可以使你的文件搜索更精确,但谨慎一点总是好的。

以上是慎用Linux find命令的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何在Linux中自動重新啟動失敗的服務如何在Linux中自動重新啟動失敗的服務Apr 28, 2025 am 09:39 AM

本指南詳細介紹瞭如何使用SystemD配置自動服務在Linux中重新啟動,從而增強了系統的可靠性並最大程度地減少停機時間。 系統管理員通常依靠此功能來確保關鍵服務,例如Web服務器(APA

10個隱藏的Linux命令每個系統都應該知道10個隱藏的Linux命令每個系統都應該知道Apr 28, 2025 am 09:35 AM

作為Linux用戶,我們經常依賴常用的命令ls、grep、awk、sed和find來完成工作。但Linux擁有大量鮮為人知的命令,可以節省時間、自動化任務並簡化工作流程。 本文將探討一些被低估但卻功能強大的Linux命令,它們值得更多關注。 rename – 高效批量重命名文件 當您需要一次重命名多個文件時,rename命令是救星。無需使用包含mv的循環,rename允許您輕鬆應用複雜的重命名模式。 將所有.txt文件更改為.log。 rename 's/\.txt$/\.log/' *

如何在Linux中的SystemD下列出所有運行服務如何在Linux中的SystemD下列出所有運行服務Apr 28, 2025 am 09:29 AM

Linux 系統提供各種系統服務(例如進程管理、登錄、syslog、cron 等)和網絡服務(例如遠程登錄、電子郵件、打印機、Web 託管、數據存儲、文件傳輸、域名解析(使用 DNS)、動態 IP 地址分配(使用 DHCP)等等)。 從技術上講,服務是在後台持續運行的進程或進程組(通常稱為 守護進程),等待傳入請求(尤其來自客戶端)。 Linux 支持不同的方式來管理(啟動、停止、重啟、啟用系統啟動時的自動啟動等)服務,通常通過進程或服務管理器。幾乎所有現代 Linux 發行版現在都使用相同的進

Crossover 25:在Linux上運行Windows軟件和遊戲Crossover 25:在Linux上運行Windows軟件和遊戲Apr 28, 2025 am 09:27 AM

使用Crossover 25運行Windows軟件和遊戲 由於CodeWeavers的Crossover 25,在Linux上運行Windows應用程序和遊戲現在比以往任何時候都容易。 這個商業軟件解決方案讓Linux用戶運行各種各樣的風

PCLOUD-最安全的雲存儲[優惠50%]PCLOUD-最安全的雲存儲[優惠50%]Apr 28, 2025 am 09:26 AM

使用PCLOUD保護數據:Linux安裝的綜合指南 領先的安全雲存儲服務PCloud提供了一個可靠的平台來管理您的文件和數據。本指南詳細介紹了Linux系統上的安裝過程。 關於

MANGOHUD-監視FPS,Linux遊戲中的CPU和GPU使用情況MANGOHUD-監視FPS,Linux遊戲中的CPU和GPU使用情況Apr 28, 2025 am 09:25 AM

MangoHud:實時監控Linux遊戲性能的利器 MangoHud是一款功能強大且輕量級的工具,專為遊戲玩家、開發者以及任何希望實時監控系統性能的用戶而設計。它作為Vulkan和OpenGL應用程序的疊加層,顯示FPS、CPU和GPU使用率、溫度等重要信息。本文將探討MangoHud的功能、工作原理以及使用方法,並提供在Linux系統上安裝和配置MangoHud的分步說明。 MangoHud是什麼? MangoHud是一個開源項目,可在GitHub上獲取,旨在提供一種簡單且可自定義的方式來監

5必不可少的Linux命令行檔案工具 - 第1部分5必不可少的Linux命令行檔案工具 - 第1部分Apr 28, 2025 am 09:23 AM

管理存檔文件是Linux中的常見任務。本文是兩部分系列中的第一篇,探討了五種強大的命令行檔案工具,詳細介紹了他們的功能和示例的用法。 1。焦油命令:多功能存檔實用程序 t

在Linux中比較文件的前7個工具(示例)在Linux中比較文件的前7個工具(示例)Apr 28, 2025 am 09:21 AM

本指南探討了用於比較Linux中文本文件的各種方法,Linux是系統管理員和開發人員的關鍵任務。 我們將介紹命令行工具和視覺差異工具,突出顯示其優勢和適當的用例。 假設

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。